Lorsque vous envoyez une tâche d'entraînement dans Deep Learning Containers (DLC) de Platform for AI (PAI), DLC injecte automatiquement des variables d'environnement utilisables directement dans votre code.
Variables d'environnement courantes
Ces variables d'environnement s'appuient sur Lingjun Intelligent Computing. Vous trouverez la description de chaque variable dans RDMA : réseaux haute performance pour l'entraînement distribué.
Variables d'environnement PyTorch
Lors d'un entraînement PyTorch distribué, le nœud maître et les nœuds de travail doivent établir une connexion pour communiquer. DLC synchronise les informations clés, telles que l'adresse et le port du nœud maître, via les variables d'environnement suivantes :
| Variable | Description |
|---|---|
MASTER_ADDR |
Adresse du nœud maître. Par exemple, dlc18isgeayd****-master-0. Cette valeur correspond généralement à l'adresse de service du nœud maître. |
MASTER_PORT |
Port du nœud maître. Par exemple, 23456. |
WORLD_SIZE |
Nombre total de nœuds dans la tâche distribuée. Par exemple, si vous envoyez une tâche contenant un nœud maître et un nœud de travail, WORLD_SIZE est défini sur 2. |
RANK |
Index du nœud. Par exemple, si vous envoyez une tâche contenant un nœud maître et deux nœuds de travail, RANK vaut 0 sur le nœud maître, 1 sur worker-0 et 2 sur worker-1. |
NPROC_PER_NODE |
Nombre de GPU sur chaque nœud de travail. Par exemple, si le nœud de travail utilise la spécification 8 GPU * GU7E, NPROC_PER_NODE est égal à 8 sur ce nœud de travail. |
Variables d'environnement TensorFlow
Une tâche TensorFlow distribuée construit sa topologie de réseau distribué à partir de la variable d'environnement TF_CONFIG. DLC définit les variables d'environnement suivantes pour l'entraînement TensorFlow :
| Variable | Description |
|---|---|
TF_CONFIG | Topologie du réseau distribué de TensorFlow. Exemple : |