本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 SageMaker HyperPod CLI 執行任務
若要執行任務,請確定您已在 EKS 叢集中安裝 Kubeflow Training Operator。如需詳細資訊,請參閱使用 Helm 在 Amazon EKS 叢集上安裝套件。
執行 hyperpod get-cluster
命令以取得可用的 HyperPod 叢集清單。
hyperpod get-clusters
執行 hyperpod connect-cluster
以使用協調 HyperPod 叢集的 EKS 叢集來設定 SageMaker HyperPod CLI。
hyperpod connect-cluster --cluster-name <hyperpod-cluster-name>
使用 hyperpod start-job
命令來執行任務。下列命令顯示具有必要選項的 命令。
hyperpod start-job \ --job-name
<job-name>
--image<docker-image-uri>
--entry-script<entrypoint-script>
--instance-type<ml.instance.type>
--node-count<integer>
hyperpod start-job
命令也隨附各種選項,例如任務自動恢復和任務排程。
啟用任務自動恢復
hyperpod start-job
命令也具有下列選項來指定任務自動恢復。若要讓任務自動恢復使用 SageMaker HyperPod 節點彈性功能,您必須將 restart-policy
選項的值設定為 OnFailure
。任務必須在kubeflow
命名空間或字首為 的命名空間下執行hyperpod
。
-
【--auto-resume <bool>】 #選用,失敗後啟用任務自動恢復,預設值為 false
-
【--max-retry <int>】 #選用,如果自動恢復為 true,則未指定的最大重試預設值為 1
-
【--restart-policy <enum>】 #Optional, PyTorchJob 重新啟動政策。可用的值為
Always
、OnFailure
Never
或ExitCode
。預設值為OnFailure
。
hyperpod start-job \ ... // required options \ --auto-resume true \ --max-retry 3 \ --restart-policy OnFailure
使用排程選項執行任務
hyperpod start-job
命令具有下列選項來設定具有佇列機制的任務。
注意
您需要在 EKS 叢集中安裝 Kueue
-
【--scheduler-type <enum>】 #Optional,指定排程器類型。預設值為
Kueue
。 -
【--queue-name <string>】 #選用,指定您要與任務一起提交的本機佇列
或叢集佇列 名稱。叢集管理員應使用 建立佇列 CreateComputeQuota
。 -
【--priority <string>】 #Optional,指定工作負載優先順序類別
的名稱,應由叢集管理員建立。
hyperpod start-job \ ... // required options --scheduler-type Kueue \ --queue-name high-priority-queue \ --priority high
從組態檔案執行任務
或者,您可以建立任務組態檔案,其中包含任務所需的所有參數,然後使用 --config-file 選項將此組態檔案傳遞至hyperpod start-job
命令。在此案例中:
-
使用必要的參數建立您的任務組態檔案。如需基準組態檔案,請參閱 SageMaker HyperPod CLI GitHub 儲存庫中的任務組態檔案。 https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-eks-run-jobs-hyperpod-cli.html#sagemaker-hyperpod-eks-hyperpod-cli-from-config
-
使用組態檔案啟動任務,如下所示。
hyperpod start-job --config-file
/path/to/test_job.yaml
提示
如需 hyperpod start-job
命令的完整參數清單,請參閱 SageMaker HyperPod CLI GitHub 儲存庫 README.md
中的提交任務