HPC简单作业测试

创建脚本

1.sh

bash 复制代码
#!/bin/bash
# 1.sh - 从0到1亿的死循环,每秒钟写一个数字到0.tmp(覆盖写入)

# 循环从0到100000000
for ((i=0; i<=100000000; i++)); do
    echo $i > 0.tmp
    sleep 1
done

2.sh

bash 复制代码
#!/bin/bash
#JSUB -q gpu1
#JSUB -m gpu02
#JSUB -n 1
#JSUB -o output.%J
#JSUB -e error.%J
#JSUB -J write_file_job

# 切换到当前目录并执行1.sh
cd /public/home/10201401498
bash 1.sh

创建作业

bash 复制代码
-bash-4.2$ jsub < 2.sh
Job <24785> is submitted to queue <gpu1> and default application <default>

检查作业

查看作业状态

bash 复制代码
-bash-4.2$ jjobs
JOBID      USER     STAT  QUEUE     FROM_HOST EXEC_HOST JOB_NAME     SUBMIT_TIME    ORDER
24785      1020140* RUN   gpu1      login     gpu02     *te_file_job Jul 08 17:33   -

查看作业详细信息

bash 复制代码
-bash-4.2$ jjobs -l 24785

Job <24785>, Job Name <write_file_job>, User <10201401498>, Project <default>,
                     Status <RUN>, Queue <gpu1>, Application <default>, APS Pri
                     ority <5000>, Command <#!/bin/bash;#JSUB -q gpu1;#JSUB -m
                     gpu02;#JSUB -n 1;#JSUB -o output.%J;#JSUB -e error.%J;#JSU
                     B -J write_file_job;# 切换到当前目录并执行1.sh;c
                     d /public/home/10201401498;bash 1.sh>
Wed Jul 08 17:33:35: Submitted from host <login>, CWD </public/home/10201401498
                     >, OutFile File <output.24785>, Error File <error.24785>,
                     Specified Hosts <gpu02>, 1 Processors Requested;
Wed Jul 08 17:33:36: Started on <gpu02>, Execution Home </public/home/102014014
                     98>, Execution CWD </public/home/10201401498>, Execution U
                     ser <10201401498>;
Wed Jul 08 17:34:38: Resource usage collected.
                     The CPU time used is 0.02 seconds.
                     IDLE_RATE(cputime/slots/runtime): 0.0004
                     CPU(s) Utilization: 0.02%
                     MEM:   22 Mbytes; SWAP: 0 Bbytes
                     PGIDS:15200; PIDS:15200 15487 15228 15206 15229

 RUNLIMIT
 2880.0 min

 SCHEDULING PARAMETERS:
               r15s      r1m      r5m     r15m       ut       pg       io       ls
 LoadSched        -        -        -        -        -        -        -        -
 LoadStop         -        -        -        -        -        -        -        -

                 it      tmp     swap      mem
 LoadSched        -        -        -        -
 LoadStop         -        -        -        -

检查文件是否生成

查看 0.tmp 文件是否存在

bash 复制代码
-bash-4.2$ ls -la 0.tmp
-rw-r--r-- 1 10201401498 jhdomainusers 4 Jul  8 17:36 0.tmp

如果文件存在,查看内容

bash 复制代码
-bash-4.2$ cat 0.tmp
212

查看输出和错误日志

bash 复制代码
-bash-4.2$ cat output.24785

查看错误输出

bash 复制代码
-bash-4.2$ cat error.24785

实时监控作业

查看作业动态输出(如果有)

bash 复制代码
-bash-4.2$ jctrl peek 24785
<< output from stdout >>
<< output from stderr >>

实时查看日志文件

bash 复制代码
-bash-4.2$ tail -f output.24785 error.24785
==> output.24785 <==

==> error.24785 <==

终止作业

终止作业

bash 复制代码
-bash-4.2$ jctrl kill 24785
Job <24785> is being terminated

强制终止(如果上面命令无效)

bash 复制代码
jctrl kill -f 24785

确认作业已终止

查看当前作业状态

bash 复制代码
-bash-4.2$ jjobs
No unfinished job found

查看所有作业(包括已完成的)

bash 复制代码
-bash-4.2$ jjobs -a
JOBID      USER     STAT  QUEUE     FROM_HOST EXEC_HOST JOB_NAME     SUBMIT_TIME    ORDER
24785      1020140* EXIT  gpu1      login     gpu02     *te_file_job Jul 08 17:33   -

清理作业记录

清理已完成作业

bash 复制代码
-bash-4.2$ jctrl clean 24785
Job <24785> is being cleaned
相关推荐
4399.98552 年前
c++游戏服务器开发
c++·高性能服务器