通过命令行管理作业
CHPC集群支持用户登陆管理节点来提交任务。
前提条件
1、参考登陆集群,登录CHPC集群管理节点
2、已经通过命令添加用户,或者使用work用户提交任务。
slurm提交作业
sinfo
slurm 的 sinfo 命令用于显示集群中节点(compute nodes)的信息,包括节点状态、分区(partitions)信息、节点数量以及资源信息等。 基本用法如下:
sinfo [OPTIONS]
基本选项包括:
-N, --nodes: 显示节点的详细信息。
-l, --long: 显示更详细的信息。
-p, --partition: 仅显示指定分区的信息。
srun
slurm 的 srun 命令是用于在 Slurm 集群中直接启动作业或任务的命令。srun 更适合用于运行短期、交互式的任务,而不是长期运行的作业。
主要命令格式如下:
srun [options] program
基本选项包括:
-n, --ntasks: 指定要运行的任务数量。
-N, --nodes: 指定要使用的节点数量。
-p, --partition: 指定要提交作业的分区(或队列)。
-t, --time: 指定任务的最大运行时间。
-o, --output: 指定标准输出文件。
-e, --error: 指定标准错误文件。
sbatch
slurm 的 sbatch 命令是用于将作业(jobs)提交到 Slurm 集群以进行调度和执行的命令。它允许用户将包含作业描述的脚本文件(通常是 shell 脚本)提交到集群中执行。
主要命令格式如下:
sbatch [OPTIONS] script.sh
一些常用的选项包括:
-J, --job-name: 指定作业的名称。
-p, --partition: 指定要提交作业的分区(或队列)。
-n, --ntasks: 指定要分配的任务数量。
-t, --time: 指定作业的最大运行时间。
-o, --output: 指定标准输出文件。
-e, --error: 指定标准错误文件。
squeue
slurm 的 squeue 命令用于显示当前集群中正在运行的作业的信息。它可以列出各种作业的状态、队列信息、用户信息等。
基本用法如下:
squeue [OPTIONS]
一些常用的选项包括:
-u, --user: 显示指定用户的作业信息。
-t, --state: 根据作业状态进行筛选显示。
-p, --partition: 指定要显示的分区(队列)信息。
scancel
scancel 是 slurm 提供的用于取消正在运行的作业或任务的命令。
基本用法如下:
scancel [OPTIONS] job_id
一些常用的选项包括:
-u, --user: 取消特定用户提交的作业。
-t, --state: 取消特定状态的作业。
-n, --name: 取消特定作业名称的作业。
SGE作业提交
需要注意SGE不能在root用户下提交任务,可创建用户或者在work用户下提交任务。
qhost
qhost 是 SGE(Sun Grid Engine)中用于显示计算节点(execution hosts)信息的命令。
它用于查看和显示集群中计算节点的状态、资源使用情况以及其他相关信息。
基本用法如下:
qhost [选项]
一些常用的选项包括:
-q, --queue: 显示队列的信息。
-j, --jobs: 显示节点上正在运行的作业信息。
-F, --verbose: 显示更详细的信息。
qsub
qsub 是 SGE(Sun Grid Engine)中用于提交作业到集群进行调度和执行的命令。
基本用法如下:
qsub [选项] job_script
其中 job_script 是包含作业描述的脚本文件。qsub 命令将作业提交到集群中执行。
一些常用的选项包括:
-N job_name:指定作业名称。
-l resource=value:指定作业需要的资源,如时间、内存等。
-o output_file:指定标准输出文件。
-e error_file:指定标准错误文件。
qstat
qstat 是 SGE(Sun Grid Engine)中用于显示作业状态信息的命令。
它可以用于查看在集群中正在运行的作业的状态、队列信息、用户信息等。
基本用法如下:
qstat [选项]
一些常用的选项包括:
-u, --user: 显示指定用户的作业信息。
-f, --full: 显示作业的详细信息。
-g, --queue: 显示队列的信息。
qhold
qhold 是 SGE(Sun Grid Engine)中用于暂停作业的命令。它可以用来暂时停止正在运行的作业,使其暂时不会继续执行。
基本用法如下:
qhold job_id
其中 job_id 是要暂停的作业的标识符。
qrls
qrls 是 SGE(Sun Grid Engine)中用于释放暂停作业的命令。
当你使用 qhold 命令暂停了一个作业后,可以使用 qrls 命令来释放暂停状态,使作业恢复运行。
基本用法如下:
qrls job_id
其中 job_id 是要释放暂停状态的作业的标识符。
qdel
qdel 是 SGE(Sun Grid Engine)中用于删除作业的命令。它可以用来取消或删除已经提交到队列中的作业。
基本用法如下:
qdel job_id
其中 job_id 是要删除的作业的标识符。