使用 SageMaker HyperPod CLI 執行任務 - Amazon SageMaker AI

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 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 重新啟動政策。可用的值為 AlwaysOnFailureNeverExitCode。預設值為 OnFailure

hyperpod start-job \ ... // required options \ --auto-resume true \ --max-retry 3 \ --restart-policy OnFailure

使用排程選項執行任務

hyperpod start-job 命令具有下列選項來設定具有佇列機制的任務。

注意

您需要在 EKS 叢集中安裝 Kueue。如果您尚未安裝 ,請遵循 中的指示SageMaker HyperPod 任務控管的設定

  • 【--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命令。在此案例中:

  1. 使用必要的參數建立您的任務組態檔案。如需基準組態檔案,請參閱 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

  2. 使用組態檔案啟動任務,如下所示。

    hyperpod start-job --config-file /path/to/test_job.yaml
提示

如需 hyperpod start-job命令的完整參數清單,請參閱 SageMaker HyperPod CLI GitHub 儲存庫 README.md 中的提交任務一節。