Vous pouvez utiliser l'outil client pour soumettre plusieurs types de tâches d'entraînement. Cette rubrique décrit les commandes utilisées pour soumettre des tâches, notamment la syntaxe d'appel, la description des paramètres et des exemples d'utilisation.
Paramètres communs pour la soumission de tâches
Lorsque vous utilisez la ligne de commande DLC pour soumettre des tâches TensorFlow (tfjob), PyTorch (pytorchjob) ou XGBoost (xgboostjob), un ensemble de paramètres communs s'applique. Ces paramètres sont répertoriés ci-dessous.
Tableau 1. Paramètres communs pour la soumission de tâches
Paramètre | Obligatoire | Description | Type | Pris en charge dans le fichier de paramètres de la tâche |
name | Oui | Nom de la tâche. Plusieurs tâches peuvent partager le même nom. | STRING | Oui |
command | Oui | Commande de démarrage pour chaque nœud. | STRING | Oui |
data_sources | Non | Monte un jeu de données. Vous pouvez spécifier la version du jeu de données et le chemin de montage au format
Vous pouvez lier plusieurs jeux de données simultanément, séparés par des virgules (,). La valeur par défaut est vide. | STRING | Oui |
spot_spec | Non | Utilise des ressources spot. Le format est
Par exemple, pour définir une enchère maximale avec une remise de 50 %, configurez :
Les types d'instances spot sont configurés via les paramètres spécifiques au rôle du framework de la tâche (par exemple, pour PyTorchJob, utilisez --master_spec et --worker_spec). | STRING | Oui |
elastic_spot_specs | Non | Utilise des ressources spot élastiques avec plusieurs types d'instances. Le format est
Vous pouvez spécifier plusieurs types d'instances candidates séparés par
| STRING | Oui |
data_source_uris | Non | Monte directement un chemin de source de données. Le format est
Vous pouvez lier plusieurs chemins de sources de données simultanément, séparés par des virgules (,). La valeur par défaut est vide. | STRING | Oui |
code_source | Non | ID de la source de code. Vous pouvez le consulter sur la page Configuration du code. Une seule valeur peut être spécifiée. La valeur par défaut est vide. | STRING | Oui |
code_branch | Non | Spécifie la branche du dépôt de code. Utilisez ce paramètre conjointement avec le paramètre code_source. | STRING | Oui |
code_commit | Non | Spécifie l'ID de validation (commit) du dépôt de code. Utilisez ce paramètre conjointement avec le paramètre code_source. | STRING | Oui |
thirdparty_libs | Non | Bibliothèques tierces Python. Séparez plusieurs bibliothèques par des virgules (,). La valeur par défaut est vide. | STRING | Oui |
thirdparty_lib_dir | Non | Répertoire contenant le fichier requirements.txt utilisé pour installer les bibliothèques tierces Python. La valeur par défaut est vide. | STRING | Non |
vpc_id | Non | ID du VPC (Virtual Private Cloud) auquel la tâche peut accéder. La valeur par défaut est vide. | STRING | Oui |
switch_id | Non (obligatoire si vpc_id est spécifié) | ID du vSwitch dans le VPC auquel la tâche accède. La valeur par défaut est vide. | STRING | Oui |
security_group_id | Non (obligatoire si vpc_id est spécifié) | ID du groupe de sécurité dans le VPC auquel la tâche accède. La valeur par défaut est vide. | STRING | Oui |
job_file | Non | Fichier de paramètres de la tâche. Les paramètres contenus dans job_file sont prioritaires. Le format est | STRING | Non |
interactive | Non | Indique si la tâche doit être démarrée en mode interactif. | BOOL | Oui |
job_max_running_time_minutes | Non | Durée d'exécution maximale de la tâche. La valeur par défaut est 0, ce qui signifie qu'aucune durée maximale n'est définie. | INT64 | Oui |
success_policy | Non | Pris en charge uniquement par TFJob. Valeurs valides :
Si laissé vide, AllWorkers est utilisé par défaut. | STRING | Oui |
envs | Non | Configure les variables d'environnement pour les nœuds worker. Le format est | StringToString | Oui |
tags | Non | Configure les tags pour la tâche. Le format est | StringToString | Oui |
oversold_type | Non | Configure la manière dont la tâche utilise les ressources de calcul inactives. Valeurs valides :
| STRING | Oui |
driver | Non | Spécifie la version du pilote GPU utilisée par la tâche. | STRING | Oui |
default_route | Non | Lorsqu'un VPC est sélectionné, configure la méthode d'accès au réseau public. Valeurs valides :
| STRING | Oui |
priority | Non | Configure la priorité de la tâche. La valeur par défaut est 1. La plage de valeurs va de 1 à 9, où :
| INT32 | Oui |
exit_code_on_stopped | Non | Lorsqu'une tâche exécutée en mode interactif est arrêtée, spécifie le code de sortie de l'outil de ligne de commande. La valeur par défaut est 0. | INT32 | Oui |
job_reserved_minutes | Non | Définit la période de conservation (en minutes) après la fin de la tâche. La valeur par défaut est 0. | INT32 | Oui |
job_reserved_policy | Non | Définit la politique de conservation de la tâche. Valeurs valides :
| STRING | Oui |
Soumettre des tâches d'entraînement TensorFlow (submit tfjob)
-
Fonction
Permet de soumettre des tâches d'entraînement TensorFlow.
-
Syntaxe
Vous pouvez soumettre des tâches TensorFlow en utilisant soit des paramètres de ligne de commande, soit un fichier de paramètres de tâche.
./dlc submit tfjob [flags] -
Paramètres
Lors de la soumission d'une tâche TensorFlow à l'aide de paramètres de ligne de commande, remplacez les paramètres de la commande par des valeurs réelles. Lors de la soumission à l'aide d'un fichier de paramètres de tâche, écrivez les paramètres dans le fichier au format
<parameterName>=<parameterValue>. Les paramètres communs pour la soumission de tâches TensorFlow sont répertoriés au début de cette rubrique. Voici les paramètres spécifiques aux tâches TensorFlow :Tableau 2. Paramètres spécifiques aux tâches TensorFlow
Paramètre
Obligatoire
Description
Type
Pris en charge dans le fichier de paramètres de la tâche
workspace_id
Oui
L'ID de l'espace de travail. La valeur par défaut est vide. Pour savoir comment créer un espace de travail, consultez Créer et gérer des espaces de travail.
STRING
Oui
chief
Non
Indique si le nœud TensorFlow Chief est activé. Valeurs possibles :
false : Valeur par défaut. Désactive le nœud TensorFlow Chief.
true : Active le nœud TensorFlow Chief.
BOOL
Oui
chief_image
Non
L'image du nœud TensorFlow Chief. La valeur par défaut est vide.
STRING
Oui
chief_spec
Non
Le type d'instance utilisé par le nœud TensorFlow Chief. La valeur par défaut est vide.
STRING
Oui
master_image
Non
L'image du nœud TensorFlow Master. La valeur par défaut est vide.
STRING
Oui
master_spec
Non
Le type d'instance utilisé par le nœud TensorFlow Master.
STRING
Oui
masters
Non
Le nombre de nœuds TensorFlow Master. La valeur par défaut est 0.
INT
Oui
ps
Non
Le nombre de nœuds TensorFlow Parameter Server. La valeur par défaut est 0.
INT
Oui
ps_image
Non
L'image du nœud TensorFlow Parameter Server. La valeur par défaut est vide.
STRING
Oui
ps_spec
Non
Le type d'instance utilisé par le nœud TensorFlow Parameter Server. La valeur par défaut est vide.
STRING
Oui
worker_image
Non
L'image du nœud TensorFlow Worker. La valeur par défaut est vide.
STRING
Oui
worker_spec
Non
Le type d'instance utilisé par le nœud TensorFlow Worker. La valeur par défaut est vide.
STRING
Oui
workers
Non
Le nombre de nœuds TensorFlow Worker. La valeur par défaut est 0.
INT
Oui
evaluator_image
Non
L'image du nœud TensorFlow Evaluator. La valeur par défaut est vide.
STRING
Oui
evaluator_spec
Non
Le type d'instance utilisé par le nœud TensorFlow Evaluator. La valeur par défaut est vide.
STRING
Oui
evaluators
Non
Le nombre de nœuds TensorFlow Evaluator. La valeur par défaut est 0.
INT
Oui
graphlearn_image
Non
L'image du nœud TensorFlow GraphLearn. La valeur par défaut est vide.
STRING
Oui
graphlearn_spec
Non
Le type d'instance utilisé par le nœud TensorFlow GraphLearn. La valeur par défaut est vide.
STRING
Oui
graphlearns
Non
Le nombre de nœuds TensorFlow GraphLearn. La valeur par défaut est 0.
INT
Oui
Tableau 3. Paramètres spécifiques à la soumission de tâches TensorFlow vers un groupe de ressources dédié
Paramètre
Obligatoire
Description
Type
Pris en charge dans le fichier de paramètres de la tâche
resource_id/@parmname
Non (obligatoire lors de la soumission de tâches vers un groupe de ressources dédié)
L'ID du quota de ressources dédiées. La valeur par défaut est vide. Pour savoir comment créer un quota de ressources dédiées, consultez Quotas de ressources de calcul générales.
STRING
Oui
priority/@parmname
Non
La priorité de la tâche. La valeur par défaut est 1.
INT
Oui
chief_cpu/@parmname
Non
Le nombre de CPU utilisés par le nœud TensorFlow Chief. La valeur par défaut est vide.
STRING
Oui
chief_gpu/@parmname
Non
Le nombre de GPU utilisés par le nœud TensorFlow Chief. La valeur par défaut est vide.
STRING
Oui
chief_gpu_type/@parmname
Non
Le type de GPU utilisé par le nœud TensorFlow Chief. La valeur par défaut est vide. Exemple : GU50.
STRING
Oui
chief_memory/@parmname
Non
Les ressources mémoire utilisées par le nœud TensorFlow Chief. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
chief_shared_memory/@parmname
Non
Les ressources de mémoire partagée pour le nœud TensorFlow Chief. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
master_cpu/@parmname
Non
Le nombre de CPU utilisés par le nœud TensorFlow Master. La valeur par défaut est vide.
STRING
Oui
master_gpu/@parmname
Non
Le nombre de GPU utilisés par le nœud TensorFlow Master. La valeur par défaut est vide.
STRING
Oui
master_gpu_type/@parmname
Non
Le type de GPU utilisé par le nœud TensorFlow Master. La valeur par défaut est vide. Exemple : GU50.
STRING
Oui
master_memory/@parmname
Non
Les ressources mémoire utilisées par le nœud TensorFlow Master. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
master_shared_memory/@parmname
Non
Les ressources de mémoire partagée pour le nœud TensorFlow Master. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
*_cpu/@parmname
Non
Le nombre de CPU utilisés par les nœuds TensorFlow . La valeur par défaut est vide. Remplacez par (ps, worker, evaluator, graphlearn).
STRING
Oui
*_gpu/@parmname
Non
Le nombre de GPU utilisés par les nœuds TensorFlow . La valeur par défaut est vide. Remplacez par (ps, worker, evaluator, graphlearn).
STRING
Oui
*_gpu_type/@parmname
Non
Le type de GPU utilisé par les nœuds TensorFlow . La valeur par défaut est vide. Exemple : GU50. Remplacez par (ps, worker, evaluator, graphlearn).
STRING
Oui
*_memory/@parmname
Non
Les ressources mémoire utilisées par les nœuds TensorFlow . La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi. Remplacez par (ps, worker, evaluator, graphlearn).
STRING
Oui
*_shared_memory/@parmname
Non
Les ressources de mémoire partagée pour les nœuds TensorFlow . La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi. Remplacez par (ps, worker, evaluator, graphlearn).
STRING
Oui
-
Exemples
-
Soumettez une tâche distribuée avec 2 Workers et 1 PS à l'aide de paramètres de ligne de commande. Exemple :
./dlc submit tfjob --name=test_2021 --ps=1 \ --ps_spec=ecs.g6.8xlarge \ --ps_image=registry-vpc.cn-beijing.aliyuncs.com/pai-dlc/tensorflow-training:1.12.2PAI-cpu-py27-ubuntu16.04 \ --workers=2 \ --worker_spec=ecs.g6.4xlarge \ --worker_image=registry-vpc.cn-beijing.aliyuncs.com/pai-dlc/tensorflow-training:1.12.2PAI-cpu-py27-ubuntu16.04 \ --command="python /root/data/dist_mnist/code/dist-main.py --max_steps=10000 --data_dir=/root/data/dist_mnist/data/" \ --workspace_id=***** \ --data_sources=d-pcsah1t86b********:v1:/mnt/data/Le système renvoie un résultat similaire au suivant :
+----------------------------------+--------------------------------------+ | JobId | RequestId | +----------------------------------+--------------------------------------+ | dlcmp6vwljkz**** | xxxxxxxx-79AF-4EFC-9CE9-xxxxxxxxxxxx | +----------------------------------+--------------------------------------+ -
Soumettez une tâche distribuée avec 2 Workers et 1 PS à l'aide d'un fichier de paramètres de tâche. Exemple :
./dlc submit tfjob --job_file=job_file.dist_mnist.1ps2wDans cet exemple, job_file.dist_mnist.1ps2w/@parmname correspond au fichier de paramètres de la tâche. Les paramètres sont spécifiés au format
<parameterName>=<parameterValue>. Le contenu de job_file.dist_mnist.1ps2w/@parmname est le suivant :name=test_2021 workers=2 worker_spec=ecs.g6.4xlarge worker_image=registry-vpc.cn-beijing.aliyuncs.com/pai-dlc/tensorflow-training:1.12.2PAI-cpu-py27-ubuntu16.04 ps=1 ps_spec=ecs.g6.8xlarge ps_image=registry-vpc.cn-beijing.aliyuncs.com/pai-dlc/tensorflow-training:1.12.2PAI-cpu-py27-ubuntu16.04 command=python /root/data/dist_mnist/code/dist-main.py --max_steps=10000 --data_dir=/root/data/dist_mnist/data/ workspace_id=***** data_sources=d-pcsah1t86b********:v1:/mnt/data/
-
Soumettre des tâches d'entraînement PyTorch (submit pytorchjob)
-
Fonction
Permet de soumettre des tâches d'entraînement PyTorch.
-
Syntaxe
Vous pouvez soumettre des tâches PyTorch en utilisant soit des paramètres de ligne de commande, soit un fichier de paramètres de tâche.
./dlc submit pytorchjob [flags] -
Paramètres
Lors de la soumission d'une tâche PyTorch à l'aide de paramètres de ligne de commande, remplacez les paramètres de la commande par des valeurs réelles. Lors de la soumission à l'aide d'un fichier de paramètres de tâche, écrivez les paramètres dans le fichier au format
<parameterName>=<parameterValue>. Les paramètres communs pour la soumission de tâches PyTorch sont répertoriés au début de cette rubrique. Voici les paramètres spécifiques aux tâches PyTorch :Tableau 4. Paramètres spécifiques aux tâches PyTorch
Paramètre
Obligatoire
Description
Type
Pris en charge dans le fichier de paramètres de la tâche
workspace_id/@parmname
Oui
L'ID de l'espace de travail. La valeur par défaut est vide. Pour savoir comment créer un espace de travail, consultez Créer et gérer des espaces de travail.
STRING
Oui
master_image/@parmname
Non
L'image du nœud PyTorch Master. La valeur par défaut est vide.
STRING
Oui
master_spec/@parmname
Non
Le type d'instance utilisé par le nœud PyTorch Master. La valeur par défaut est vide.
STRING
Oui
masters/@parmname
Non
Le nombre de nœuds PyTorch Master. La valeur par défaut est 0.
INT
Oui
worker_image/@parmname
Non
L'image du nœud PyTorch Worker. La valeur par défaut est vide.
STRING
Oui
worker_spec/@parmname
Non
Le type d'instance utilisé par le nœud PyTorch Worker. La valeur par défaut est vide.
STRING
Oui
workers/@parmname
Non
Le nombre de nœuds PyTorch Worker. La valeur par défaut est 0.
INT
Oui
Tableau 5. Paramètres spécifiques à la soumission de tâches PyTorch vers un groupe de ressources dédié
Paramètre
Obligatoire
Description
Type
Pris en charge dans le fichier de paramètres de tâche
resource_id/@parmname
Non (obligatoire lors de la soumission de tâches vers un groupe de ressources dédié)
L'ID du quota de ressources dédiées. La valeur par défaut est vide. Pour savoir comment créer un quota de ressources dédiées, consultez la rubrique Quotas de ressources de calcul générales.
STRING
Oui
priority/@parmname
Non
La priorité de la tâche. La valeur par défaut est 1.
INT
Oui
master_cpu/@parmname
Non
Le nombre de CPU utilisés par le nœud maître PyTorch. La valeur par défaut est vide.
STRING
Oui
master_gpu/@parmname
Non
Le nombre de GPU utilisés par le nœud maître PyTorch. La valeur par défaut est vide.
STRING
Oui
master_gpu_type/@parmname
Non
Le type de GPU utilisé par le nœud maître PyTorch. La valeur par défaut est vide. Exemple : GU50.
STRING
Oui
master_memory/@parmname
Non
Les ressources mémoire utilisées par le nœud maître PyTorch. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
master_shared_memory/@parmname
Non
Les ressources de mémoire partagée pour le nœud maître PyTorch. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
worker_cpu/@parmname
Non
Le nombre de CPU utilisés par le nœud de travail PyTorch. La valeur par défaut est vide.
STRING
Oui
worker_gpu/@parmname
Non
Le nombre de GPU utilisés par le nœud de travail PyTorch. La valeur par défaut est vide.
STRING
Oui
worker_gpu_type/@parmname
Non
Le type de GPU utilisé par le nœud de travail PyTorch. La valeur par défaut est vide. Exemple : GU50.
STRING
Oui
worker_memory/@parmname
Non
Les ressources mémoire utilisées par le nœud de travail PyTorch. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
worker_shared_memory/@parmname
Non
Les ressources de mémoire partagée pour le nœud de travail PyTorch. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
-
Exemples
Soumettez une tâche d'entraînement de modèle GPU à l'aide de paramètres de ligne de commande. Exemple :
./dlc submit pytorchjob --name=test_pt_face \ --workers=1 \ --worker_spec=ecs.gn6e-c12g1.3xlarge \ --worker_image=registry-vpc.cn-beijing.aliyuncs.com/pai-dlc/pytorch-training:1.7.1-gpu-py37-cu110-ubuntu18.04 \ --command="apt-get update; apt-get -y --allow-downgrades install libpcre3=2:8.38-3.1 libpcre3-dev libgl1-mesa-glx libglib2.0-dev; cd /root/data/face; python train.py --num_workers 0 --save_folder outputs" \ --data_sources=d-pcsah1t86b********:v1:/mnt/data/ \ --workspace_id=*****Soumettez une tâche d'entraînement de modèle utilisant des ressources preemptibles à l'aide de paramètres de ligne de commande. Exemple :
./dlc submit pytorchjob --name=test_pt_face \ --workers=1 \ --elastic_spot_specs=ml.gp7vf.16.40xlarge:discount:1,ml.gu8tef.8.46xlarge:discount:1,ml.gu8tf.8.40xlarge:discount:0.5 \ --worker_image=registry-vpc.cn-beijing.aliyuncs.com/pai-dlc/pytorch-training:1.7.1-gpu-py37-cu110-ubuntu18.04 \ --command="apt-get update; apt-get -y --allow-downgrades install libpcre3=2:8.38-3.1 libpcre3-dev libgl1-mesa-glx libglib2.0-dev; cd /root/data/face; python train.py --num_workers 0 --save_folder outputs" \ --workspace_id=*****Le système renvoie un résultat similaire à ce qui suit :
+----------------------------------+--------------------------------------+ | JobId | RequestId | +----------------------------------+--------------------------------------+ | dlcu704xxuxk**** | xxxxxxxx-79AF-4EFC-9CE9-xxxxxxxxxxxx | +----------------------------------+--------------------------------------+
Soumettre des tâches d'entraînement XGBoost (submit xgboostjob)
-
Fonction
Permet de soumettre des tâches d'entraînement XGBoost.
-
Syntaxe
Vous pouvez soumettre des tâches XGBoost en utilisant soit des paramètres de ligne de commande, soit un fichier de paramètres de tâche.
./dlc submit xgboostjob [flags] -
Paramètres
Lorsque vous soumettez une tâche XGBoost à l'aide de paramètres de ligne de commande, remplacez les paramètres de la commande par des valeurs réelles. Lors de la soumission à l'aide d'un fichier de paramètres de tâche, écrivez les paramètres dans le fichier au format
<parameterName>=<parameterValue>. Les paramètres communs pour la soumission de tâches XGBoost sont répertoriés au début de cette rubrique. Voici les paramètres spécifiques aux tâches XGBoost :Tableau 6. Paramètres spécifiques aux tâches XGBoost
Paramètre
Obligatoire
Description
Type
Pris en charge dans le fichier de paramètres de tâche
workspace_id/@parmname
Oui
L'ID de l'espace de travail. La valeur par défaut est vide. Pour savoir comment créer un espace de travail, consultez la rubrique Créer et gérer des espaces de travail.
STRING
Oui
master_image/@parmname
Non
L'image du nœud maître XGBoost. La valeur par défaut est vide.
STRING
Oui
master_spec/@parmname
Non
Le type d'instance utilisé par le nœud maître XGBoost. La valeur par défaut est vide.
STRING
Oui
masters/@parmname
Non
Le nombre de nœuds maîtres XGBoost. La valeur par défaut est 0.
INT
Oui
worker_image/@parmname
Non
L'image du nœud de travail XGBoost. La valeur par défaut est vide.
STRING
Oui
worker_spec/@parmname
Non
Le type d'instance utilisé par le nœud de travail XGBoost. La valeur par défaut est vide.
STRING
Oui
workers/@parmname
Non
Le nombre de nœuds de travail XGBoost. La valeur par défaut est 0.
INT
Oui
Tableau 7. Paramètres spécifiques à la soumission de tâches XGBoost vers un groupe de ressources dédié
Paramètre
Obligatoire
Description
Type
Pris en charge dans le fichier de paramètres de tâche
resource_id/@parmname
Non (obligatoire lors de la soumission de tâches vers un groupe de ressources dédié)
L'ID du quota de ressources dédiées. La valeur par défaut est vide. Pour savoir comment créer un quota de ressources dédiées, consultez la rubrique Quotas de ressources de calcul générales.
STRING
Oui
priority/@parmname
Non
La priorité de la tâche. La valeur par défaut est 1.
INT
Oui
master_cpu/@parmname
Non
Le nombre de CPU utilisés par le nœud maître XGBoost. La valeur par défaut est vide.
STRING
Oui
master_gpu/@parmname
Non
Le nombre de GPU utilisés par le nœud maître XGBoost. La valeur par défaut est vide.
STRING
Oui
master_gpu_type/@parmname
Non
Le type de GPU utilisé par le nœud maître XGBoost. La valeur par défaut est vide. Exemple : GU50.
STRING
Oui
master_memory/@parmname
Non
Les ressources mémoire utilisées par le nœud maître XGBoost. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
master_shared_memory/@parmname
Non
Les ressources de mémoire partagée pour le nœud maître XGBoost. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
worker_cpu/@parmname
Non
Le nombre de CPU utilisés par le nœud de travail XGBoost. La valeur par défaut est vide.
STRING
Oui
worker_gpu/@parmname
Non
Le nombre de GPU utilisés par le nœud de travail XGBoost. La valeur par défaut est vide.
STRING
Oui
worker_gpu_type/@parmname
Non
Le type de GPU utilisé par le nœud de travail XGBoost. La valeur par défaut est vide. Exemple : GU50.
STRING
Oui
worker_memory/@parmname
Non
Les ressources mémoire utilisées par le nœud de travail XGBoost. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
worker_shared_memory/@parmname
Non
Les ressources de mémoire partagée pour le nœud de travail XGBoost. La valeur par défaut est vide. Exemple : 500 Mi, 1 Gi.
STRING
Oui
-
Exemples
Soumettez une tâche XGBoost à l'aide de paramètres de ligne de commande. Exemple :
./dlc submit xgboostjob --name=test_xgboost \ --workers=1 \ --worker_spec=ecs.gn6e-c12g1.3xlarge \ --worker_image=xgboost-training:1.6.0-cpu-py36-ubuntu18.04 \ --command="python /root/code/horovod/xgboost/main.py --job_type=Train --xgboost_parameter=objective:multi:softprob,num_class:3 --n_estimators=50 --model_path=autoAI/xgb-opt/2" \ --data_sources=d-pcsah1t86b********:v1:/mnt/data/ \ --workspace_id=*****Le système renvoie un résultat similaire à ce qui suit :
+----------------------------------+--------------------------------------+ | JobId | RequestId | +----------------------------------+--------------------------------------+ | dlc1nvu3gli0**** | xxxxxxxx-79AF-4EFC-9CE9-xxxxxxxxxxxx | +----------------------------------+--------------------------------------+
Paramètres avancés pour la soumission de tâches
Planifier des tâches sur des nœuds spécifiques
Lorsque vous soumettez une tâche à l'aide d'un quota de ressources de calcul intelligentes Lingjun ou de ressources de calcul générales, vous pouvez planifier la tâche sur des nœuds spécifiques en configurant des paramètres dans la ligne de commande DLC.
Cette fonctionnalité est actuellement disponible uniquement pour les utilisateurs figurant sur la liste blanche. Si vous avez besoin d'y accéder, contactez votre gestionnaire de compte pour être ajouté à la liste blanche.
-
Paramètres
Paramètre
Description
Valeur d'exemple
--allow_nodes="${allow_nodes}"
Spécifie une liste de noms de nœuds. Séparez plusieurs noms de nœuds par des virgules (,). N'incluez pas d'espaces entre les noms de nœuds.
lingjuc47iextvg9-,lingjuc47iextvg9-
--deny_nodes="${deny_nodes}"
Spécifie une liste de nœuds à exclure. Séparez plusieurs noms de nœuds par des virgules (,). N'incluez pas d'espaces entre les noms de nœuds.
lingjuc47iextvg9-,lingjuc47iextvg9-
-
Exemples
Paramètres de ligne de commande
Soumettez une tâche à l'aide de paramètres de ligne de commande. Exemple :
-
Aucun nœud de planification spécifié
./dlc submit pytorchjob --name=assign_node_test_no_node \--workers=1 \ --worker_image=dsw-registry-vpc.****.cr.aliyuncs.com/pai/easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04 \ --command="sleep 1000" \ --workspace_id='****' \ --resource_id='quotau2h98mt****' \ --worker_cpu="1" \ --worker_memory='2Gi' -
Spécifier des nœuds de planification
./dlc submit pytorchjob --name=assign_node_test_2_allow_nodes \--workers=1 \ --worker_image=dsw-registry-vpc.****.cr.aliyuncs.com/pai/easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04 \ --command="sleep 1000" \ --workspace_id='****' \ --resource_id='quotau2h98mt****' \ --worker_cpu="1" \ --worker_memory='2Gi' \ --allow_nodes="lingjuc47iextvg9-****,lingjuc47iextvg9-****" -
Exclure des nœuds spécifiques
./dlc submit pytorchjob --name=assign_node_test_two_deny_nodes \--workers=1 \ --worker_image=dsw-registry-vpc.****.cr.aliyuncs.com/pai/easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04 \ --command="sleep 1000" \ --workspace_id='****' \ --resource_id='quotau2h98mt****' \ --worker_cpu="1" \ --worker_memory='2Gi' \ --deny_nodes="lingjuc47iextvg9-****,lingjuc47iextvg9-****" -
Spécifier des nœuds de planification et exclure des nœuds spécifiques
./dlc submit pytorchjob --name=assign_node_test_two_allow_two_deny \--workers=1 \ --worker_image=dsw-registry-vpc.****.cr.aliyuncs.com/pai/easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04 \ --command="sleep 1000" \ --workspace_id='****' \ --resource_id='quotau2h98mt****' \ --worker_cpu="1" \ --worker_memory='2Gi' \ --allow_nodes="lingjuc47iextvg9-****,lingjuc47iextvg9-****" \ --deny_nodes="lingjuc47iextvg9-****,lingjuc47iextvg9-****"
Configuration basée sur un fichier
Soumettez une tâche à l'aide d'une configuration basée sur un fichier. Exemple :
./dlc submit pytorchjob -f job_fileIci,
job_fileest le fichier de paramètres de tâche. Le contenu est le suivant :-
Aucun nœud de planification spécifié
name=assign_node_test_no_node workers=1 worker_image=dsw-registry-vpc.****.cr.aliyuncs.com/pai/easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04 command=sleep 1000 workspace_id=**** resource_id=quotau2h98mt**** worker_cpu=1 worker_memory=2Gi -
Spécifier des nœuds de planification
name=assign_node_test_2_allow_nodes workers=1 worker_image=dsw-registry-vpc.****.cr.aliyuncs.com/pai/easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04 command=sleep 1000 workspace_id=**** resource_id=quotau2h98mt**** worker_cpu=1 worker_memory=2Gi allow_nodes=lingjuc47iextvg9-****,lingjuc47iextvg9-**** -
Exclure des nœuds spécifiques
name=assign_node_test_two_allow_two_deny workers=1 worker_image=dsw-registry-vpc.****.cr.aliyuncs.com/pai/easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04 command=sleep 1000 workspace_id=**** resource_id=quotau2h98mt**** worker_cpu=1 worker_memory=2Gi deny_nodes=lingjuc47iextvg9-****,lingjuc47iextvg9-**** -
Spécifier des nœuds de planification et exclure des nœuds spécifiques
name=assign_node_test_two_allow_two_deny workers=1 worker_image=dsw-registry-vpc.****.cr.aliyuncs.com/pai/easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04 command=sleep 1000 workspace_id=**** resource_id=quotau2h98mt**** worker_cpu=1 worker_memory=2Gi allow_nodes=lingjuc47iextvg9-****,lingjuc47iextvg9-**** deny_nodes=lingjuc47iextvg9-****,lingjuc47iextvg9-****
-
Désactiver la vérification du stock à la demande pour la soumission de tâches
Vous pouvez configurer le paramètre disable_ecs_stock_check dans la ligne de commande DLC pour désactiver la vérification du stock à la demande.
-
Paramètres
Paramètre
Description
Valeur d'exemple
disable_ecs_stock_check
Désactive la vérification du stock à la demande. Valeurs valides :
false (par défaut) : Active la vérification du stock à la demande.
true : Désactive la vérification du stock à la demande.
true ou false
-
Exemples
Paramètres de ligne de commande
Soumettez une tâche à l'aide de paramètres de ligne de commande. Exemple :
-
Activer la vérification du stock à la demande
./dlc submit pytorchjob \ --name=test_skip_checking3 \ --command='sleep 1000' \ --workspace_id=**** \ --priority=1 \ --workers=1 \ --worker_image=registry.cn-hangzhou.aliyuncs.com/pai-dlc/tensorflow-training:1.12PAI-gpu-py36-cu101-ubuntu18.04 \ --worker_spec=ecs.g6.xlarge -
Désactiver la vérification du stock à la demande
./dlc submit pytorchjob \ --name=test_skip_checking3 \ --command='sleep 1000' \ --workspace_id=**** \ --priority=1 \ --workers=1 \ --worker_image=registry.cn-hangzhou.aliyuncs.com/pai-dlc/tensorflow-training:1.12PAI-gpu-py36-cu101-ubuntu18.04 \ --worker_spec=ecs.g6.xlarge \ --disable_ecs_stock_check=true
Configuration basée sur un fichier
Soumettez une tâche à l'aide d'une configuration basée sur un fichier. Exemple :
./dlc submit pytorchjob -f job_fileIci,
job_fileest le fichier de paramètres de tâche. Le contenu est le suivant :-
Activer la vérification du stock à la demande
name=test_skip_checking3 workers=1 worker_image=registry.cn-hangzhou.aliyuncs.com/pai-dlc/tensorflow-training:1.12PAI-gpu-py36-cu101-ubuntu18.04 command=sleep 1000 workspace_id=**** worker_spec=ecs.g6.xlarge -
Désactiver la vérification du stock à la demande
name=test_skip_checking3 workers=1 worker_image=registry.cn-hangzhou.aliyuncs.com/pai-dlc/tensorflow-training:1.12PAI-gpu-py36-cu101-ubuntu18.04 command=sleep 1000 workspace_id=**** worker_spec=ecs.g6.xlarge disable_ecs_stock_check=true
-
Documents connexes
Une fois qu'une tâche a été soumise avec succès, vous pouvez la gérer à l'aide de l'outil client. Pour plus d'informations, consultez les rubriques Commande utilisée pour arrêter les tâches d'entraînement et Commandes utilisées pour interroger les journaux ou les tâches.
Vous pouvez également gérer les tâches soumises dans la console. Pour plus d'informations, consultez la rubrique Gérer les tâches d'entraînement.