在中运行单节点作业 AWS PCS - AWS PCS

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在中运行单节点作业 AWS PCS

要使用 Slurm 运行作业,您需要准备一个指定作业要求的提交脚本,然后使用命令将其提交到队列。sbatch通常,这是在共享目录中完成的,因此登录和计算节点有一个用于访问文件的公共空间。

连接到集群的登录节点,并在其 shell 提示符下运行以下命令。

  • 成为默认用户。切换到共享目录。

    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 来检查任务状态。Replace(替换) 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.err这些文件名为single.1.out、由集群的一个计算节点写入。由于作业是在共享目录 (/shared) 中运行的,因此它们也可以在您的登录节点上使用。这就是您为该集群配置 fo FSx r 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