翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
で単一ノードジョブを実行する AWS PCS
Slurm を使用してジョブを実行するには、ジョブ要件を指定する送信スクリプトを準備し、 sbatch
コマンドを使用してキューに送信します。通常、これは共有ディレクトリから行われるため、ログインノードとコンピューティングノードにはファイルにアクセスするための共通のスペースがあります。
クラスターのログインノードに接続し、シェルプロンプトで次のコマンドを実行します。
-
デフォルトユーザーになる。共有ディレクトリに変更します。
sudo su - ec2-user cd /shared
-
次のコマンドを使用して、サンプルジョブスクリプトを作成します。
cat << EOF > job.sh #!/bin/bash #SBATCH -J single #SBATCH -o single.%j.out #SBATCH -e single.%j.err echo "This is job \${SLURM_JOB_NAME} [\${SLURM_JOB_ID}] running on \${SLURMD_NODENAME}, submitted from \${SLURM_SUBMIT_HOST}" && sleep 60 && echo "Job complete" EOF
-
ジョブスクリプトを Slurm スケジューラに送信します。
sbatch -p demo job.sh
-
ジョブが送信されると、ジョブ ID が数値として返されます。その ID を使用してジョブのステータスを確認します。置換
job-id
次のコマンドの を、 から返された番号で指定しますsbatch
。squeue --job
job-id
squeue --job 1
squeue
コマンドは次のような出力を返します。JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 1 demo test ec2-user CF 0:47 1 compute-1
-
(
R
実行中) ステータスに達するまで、ジョブのステータスを引き続き確認します。ジョブは、squeue
が何も返さないときに行われます。 -
/shared
ディレクトリの内容を確認します。ls -alth /shared
コマンド出力は、次のようになります。
-rw-rw-r- 1 ec2-user ec2-user 107 Mar 19 18:33 single.1.out -rw-rw-r- 1 ec2-user ec2-user 0 Mar 19 18:32 single.1.err -rw-rw-r- 1 ec2-user ec2-user 381 Mar 19 18:29 job.sh
single.1.out
および という名前のファイルは、クラスターのコンピューティングノードの 1 つによってsingle.1.err
書き込まれました。ジョブは共有ディレクトリ (/shared
) で実行されたため、ログインノードでも利用できます。このため、このクラスターFSxに for Lustre ファイルシステムを設定しました。 -
single.1.out
ファイルの内容を確認します。cat /shared/single.1.out
出力は次の例のようになります。
This is job test [1] running on compute-1, submitted from ip-10-3-13-181 Job complete