Ao enviar uma tarefa de treinamento no Deep Learning Containers (DLC) do Platform for AI (PAI), o DLC injeta automaticamente variáveis de ambiente para uso direto no código.
Variáveis de ambiente comuns
Essas variáveis de ambiente baseiam-se no Lingjun Intelligent Computing. Consulte a descrição de cada variável em RDMA: high-performance networks for distributed training.
Variáveis de ambiente do PyTorch
No treinamento distribuído com PyTorch, o nó mestre e os nós workers devem estabelecer conexão para comunicação. O DLC sincroniza informações essenciais, como endereço e porta do nó mestre, pelas seguintes variáveis de ambiente:
|
Variável |
Descrição |
|
|
Endereço do nó mestre. Exemplo: |
|
|
Porta do nó mestre. Exemplo: 23456. |
|
|
Total de nós na tarefa distribuída. Por exemplo, ao enviar uma tarefa com um nó mestre e um nó worker, WORLD_SIZE é definido como 2. |
|
|
Índice do nó. Se a tarefa contiver um nó mestre e dois nós workers, RANK será 0 no nó mestre, 1 no worker-0 e 2 no worker-1. |
|
|
Número de GPUs em cada nó worker. Caso o nó worker utilize a especificação de 8 GPUs * GU7E, NPROC_PER_NODE será 8 nesse nó. |
Variáveis de ambiente do TensorFlow
Uma tarefa distribuída do TensorFlow constrói sua topologia de rede distribuída a partir da variável de ambiente TF_CONFIG. O DLC define as seguintes variáveis de ambiente para treinamento com TensorFlow:
| Variável | Descrição |
|---|---|
TF_CONFIG | Topologia de rede distribuída do TensorFlow. Exemplo: |