Al enviar una tarea de entrenamiento en Deep Learning Containers (DLC) de Platform for AI (PAI), DLC inyecta automáticamente variables de entorno que puede usar directamente en su código.
Variables de entorno comunes
Estas variables de entorno se basan en Lingjun Intelligent Computing. Consulte la descripción de cada variable en RDMA: high-performance networks for distributed training.
Variables de entorno de PyTorch
En el entrenamiento distribuido con PyTorch, el nodo maestro y los nodos worker deben establecer una conexión para comunicarse. DLC sincroniza información clave, como la dirección y el puerto del nodo maestro, mediante las siguientes variables de entorno:
|
Variable |
Descripción |
|
|
Dirección del nodo maestro. Por ejemplo, |
|
|
Puerto del nodo maestro. Por ejemplo, 23456. |
|
|
Número total de nodos en la tarea distribuida. Por ejemplo, si envía una tarea con un nodo maestro y un nodo worker, WORLD_SIZE se establece en 2. |
|
|
Índice del nodo. Por ejemplo, si envía una tarea con un nodo maestro y dos nodos worker, RANK es 0 en el nodo maestro, 1 en worker-0 y 2 en worker-1. |
|
|
Número de GPU en cada nodo worker. Por ejemplo, si el nodo worker usa la especificación de 8 GPU * GU7E, NPROC_PER_NODE es 8 en dicho nodo. |
Variables de entorno de TensorFlow
Una tarea distribuida de TensorFlow construye su topología de red distribuida a partir de la variable de entorno TF_CONFIG. DLC configura las siguientes variables de entorno para el entrenamiento con TensorFlow:
| Variable | Descripción |
|---|---|
TF_CONFIG | Topología de red distribuida de TensorFlow. Ejemplo: |