售前咨询电话

021-61872201

客服电话

021-80166080*834

有问题直接回复客服

微信扫码

注册 登录
产品
支持
帮助与文档
高性能集群计算 > 命令行操作手册 > 魔方-2集群命令行操作说明
魔方-2集群命令行操作说明
1. 作业管理系统简介
作业管理系统是一个管理任务和计算机资源的系统,它能接受由shell脚本和控制属性组成的任务,并且保存任务直到任务被运行,运行完任务后会把结果送回提交作业的用户。
平台集成的基础型资源利用PBS系统进行计算作业的管理,所有的计算作业都必须作为任务提交到PBS系统,然后由PBS系统统一调度执行,严禁不通过调度系统直接运行程序。执行过程中可以利用PBS作业调度系统的相关命令查询作业状态等。
2. 计算节点与队列简介
计算节点即集群中的单个计算机,是集群系统的基本单位。计算节点的编号由4个字符组成,第一个字符为字母a,后三位为一定范围内的数字,即a[1-7][10-69]。其中节点a110仅作为编译节点。
队列是作业管理系统的基本概念,根据作业并行规模的不同,基础型资源上的作业调度系统设置了两个队列:
- score:可提交任意并行度的作业,主要用于串行作业(np=1)、小规模的并行作业(np<24),也可以用于并行度非24倍数的其他规模作业。
- snode:只能提交24的整数倍并行度的作业,作业最终提交运行时会独占所申请分配的整个计算节点。
3. 作业操作基本步骤
(1) 计算准备——准备计算需要用的数据文件和作业脚本文件。
(2) 数据上传——通过数据管理上传计算数据文件和作业脚本文件。
(3) 提交作业——通过提交作业命令执行脚本文件进行计算。
(4) 作业监控——采用作业管理命令监控作业的执行情况。
(5) 结果查看下载——计算完成后通过数据管理下载结果文件。
3.1 数据准备与传输
计算文件通过HPCplus平台进行传输,您可以根据文件的大小选择合适的传输方式。
- 对于小于1G的文件,建议使用平台内置的“文件传输”功能,如下:
- 对于>1G的文件,建议使用客户端来进行传输,如下:
下载完并使用默认设置安装后,点击“打开客户端”即出现FTP客户端界面,选择要传输的文件即可。
3.2 提交作业
系统利用PBS进行资源和作业管理,所有需要运行的作业必须通过qsub 命令提交,提交后可以利用作业调度系统的相关命令查询作业状态等。用户需针对此作业创建提交脚本,在脚本里面设定需要运行的作业参数等。
在此分别给出串行和并行的简单脚本,用户可以修改此脚本以适用于自己的作业。脚本文件是一个常规文本文件,可以直接使用vi编辑器编写,也可异地编写上传至用户作业工作目录,但要注意dos2unix转换一下。脚本文件名无特殊规定,起一个有意义的名字即可。
编辑完成脚本文件后即可提交,例如对一个名称为testjob.pbs的作业脚本文件,编辑完成后,使用命令qsub testjob.pbs来提交。
3.2.1 基本PBS命令
- 提交作业
qsub <作业脚本文件名>
- 查看作业
qstat <作业编号>
- 结束作业
qdel <作业编号>
- 查看作业信息
checkjob <作业编号>
3.2.2 串行作业示例
		#!/bin/sh
		#PBS -N testjob
		#PBS -l nodes=1:ppn=1
		#PBS -q score
		cd $PBS_O_WORKDIR
		/path/to/test/job/binary/file
		
上述脚本中以#PBS 开头的几行中:
其中-N参数后设置的是这个作业的名字testjob;
其中-q参数后设置作业使用的队列名score;
其中-l 参数后的设置申请了计算资源分配情况,nodes=1 表示申请 1 个计算节点,ppn=1表示申请计算节点内的1个计算进程。
3.2.3 并行作业示例
		#!/bin/sh
		#PBS -N testjob
		#PBS -l nodes=2:ppn=24
		#PBS -q snode
		cd $PBS_O_WORKDIR
		NP=`cat $PBS_NODEFILE | wc -l`
		mpirun -np $NP -machinefile $PBS_NODEFILE /path/to/test/job/binary/file
		
其中-N参数后设置的是这个作业的名字testjob;
其中-q参数后设置作业使用的队列名snode;
其中-l参数后的设置申请了计算资源分配情况,nodes=2表示申请 2个计算节点,ppn=24表示申请计算节点内的全部24个计算进程。
并行作业计算要求并行规模NP为24的整倍数。
3.2.4 大内存作业示例
		#!/bin/sh
		#PBS -N bigmemjob
		#PBS -l nodes=2:ppn=24
		#PBS -q snode
		REAL_NP_PER_NODE=8
		#generate nodelist
		rm -rf $PWD/nodelist 1>/dev/null 2>&1
		for i in `cat $PBS_NODEFILE | sort | uniq`
		do
		        for j in `seq 1 $REAL_NP_PER_NODE`
		        do
		        echo $i >> $PWD/nodelist
		        done
		done
		#nodelist done
		cd $PBS_O_WORKDIR
		NP=`cat $PWD/nodelist | wc -l`
		mpirun -np $NP -machinefile $PWD/nodelist /path/to/big/mem/job/binary/file
		
其中-N参数后设置的是这个作业的名字bigmemjob;
其中-l参数后的设置申请了计算资源分配情况,nodes=2表示申请 2个计算节点,ppn=24表示申请计算节点内的全部24个计算进程;
其中REAL_NP_PER_NODE参数设置每个计算节点期望运行的计算进程数,可根据计算节点物理总内存(128GB)和每个进程所需的内存容量相除计算得到。
3.3 作业监控与管理
下面列出常用的作业管理命令,如果需要更详细的资料可以参考作业调度系统相关手册:
pbsnodes:显示节点信息。
qstat -l:显示队列、服务节点和作业的详细信息。
bjobs: 功能同qstat,但可读性更好,执行速度略慢。
bqueues: 显示当前队列情况,建议在提交作业之前运行以确定合适的并行规模
4. 编译环境
账号默认环境包括gnu编译器、openmpi并行环境,可集成intel编译器。
常用的数学库见 /public/home/users/application/lib
atlas-3.10 boost-1.58 eigen elpa-2016 fftw-3.3.6 hdf5-1.8.18 lapack-3.5.0 libunwind-1.2 libxc mesa netcdf-4.4.1.1 openBLAS-0.2.18 pcre-8.36 scalapack-2.0.2 yaml-0.1.5  
常见工具见/public/home/users/application/tools
python-2.7.10 (含numpy等常用模块) perl-5.22 xcrysden (欲使用需联系) vmd jdk1.8 plumed2 vtstscripts wannier90 dssp-2.0.4 packmol
免费试用,零门槛体验高性能计算魅力
免费体验
首页 Copyright © 2016-2020 上海超算科技有限公司 沪ICP备16034967号-5