高性能集群用户使用手册成都中医药大学.docx
《高性能集群用户使用手册成都中医药大学.docx》由会员分享,可在线阅读,更多相关《高性能集群用户使用手册成都中医药大学.docx(26页珍藏版)》请在三一文库上搜索。
1、高性能集群用户使用手册成都中医药大学2021年3月-s shell指明执行运行脚本所用的shell,须包含全路径。-u userjist定义作业将在运行结点上以哪个用户名来运行。-v variablejist定义export到本作业的环境变量的扩展列表。-V表明qsub命令的所有环境变量都export到此作业。-W additional_attributes 作业的其它属性运行脚本同Linux下一般的运行脚本文件注:脚本文件中的mpirun命令行中的节点列表文件要用环境变量表示。$PBS_NODEFILE,这个环境变量表示由PBS自动分配给作业的节点列表;节点数为命令行中拴定的进程数。命令格式
2、mpirun-np 进程数 -hostfile $PBS_NODEFILE 可执行程序名2.6 PBS环境下运行示例(1)脚本文件编辑示例实例1 :运行mpi程序命令行:#vi aaa.pbs编辑的内容:#PBS -N myjob#PBS -o /home/test/my.out#PBS -e /home/test/my.err#PBS -I nodes=2:ppn=2cd $PBS_O_WORKDIR (进入工作目录,即脚本所在的目录)mpirun -np 4 -hostfile $PBS_NODEFILE /home/test/helloworld解释:原来我们都是在终端输入mpirun
3、这些命令执行程序的,现在只要把这些提交命令放在.pbs配置文件的最后,由PBS来调度执行(自动分配节点和其它资源)。myjob是为要运行的程序起的任务名,可以改成你自己想要的名字。原先输出信息都是直接在屏幕上显示的,现在屏幕上的显示全部输出到文件中。上例中输出文件是/home/test/my.out文件,可以根据自己的需要修改(目录,文件名)。程序运行时遇到的一些错误会记录在.er文件中。这样的好处是,因为对每个任务都设定了不同的输出文件,所以看结果只要打开相应文件看就可以了,不需要开多个终端,而且里面有任务的详细信息,比如实际分配的是哪些节点计算,运行时间等。pbs-I nodes二2:pp
4、n二2规定使用的节点数,以及每个节点能跑多少核。mpirun -np 4 -hostfile $PBS_NODEFILE /home/test/helloworld此例中-np后的4是并行数(2x2 = 4个cpu), -hostfile $PBS_NODEFILE不需要改变。/home/test/helloworld是你编译好的可执行文件名,需修改。对于每个你要运行的mpi程序都需要这样一个.pbs配置文件,也就是说原来的操作是:mpirun,现在改成2步走:1)写个PBS配置文件(比如xxx.pbs);2)向 PBS 提交(qsub xxx.pbs)实例2:运行非mpi程序有些用户并不是m
5、pi程序,同样也可以用PBS提交。命令行:#vi job. pbs编辑的内容:#PBS -N myjob#PBS -o /home/test/my. out#PBS -e /home/test/my. err#PBS -q队列名称#PBS -1 nodes=l:ppn=2#PBS -r ycd $PBS_0_W0RKDIR (原来直接在节点上运行时所在的目录)sh helloword解释:把原来在终端直接输入的命令放到PBS配置文件中,因为只要一个节点,所以nodes。至于用哪个节点系统自动分配,可以用qstat命令查询(比如qstat -n)。(2)提交作业示例命令行:甘qsub aaa.
6、pbs(3)作业状态查询示例qstat后加不同参数可以查看不同的信息,查看作业的状态。命令行:#qstat a解释:Job id 211是给提交的任务分配的任务号,S (状态:R代表运行,Q代表 排队,E代表正在退出,H代表挂起,C代表运行完毕)命令行:#qstat -n 查看作业使用的节点命令行:#qstat jobidl jobid2 .查看指定作业号的作业(可一次查看多个作业)命令行:ttqstat userl查看指定用户的作业解释:该方式输出和默认略有不同,但大同小异。命令行:ttqstat -f jobid 查看特定作业详细信息解释:该命令将会输出作业号为jobid的作业的详细信息。
7、3命令行作业PBS脚本3.1 Intel-mpiintelmpi.pbs注意事项,intel/2018与intel/2020运行参数不同intel2018: mpirun -rdmaintel2020: mpirun -genv I_MPI_FABRICS shm:ofi -genv FI_PROVIDER mix#PBS -N job_vasp#PBS -1 nodes=2:ppn=2#PBS -1 walltime=1200:00:00#PBS -q batch#PBS -V#PBS -S /bin/bashmodule load intel/2018ttmodule load intel
8、/2020EXEC=xxxcd $PBS 0 WORKDIRNP二cat $PBS_NODEFILE | wc -fNN二cat $PBS_NODEFILE | sort | uniq | tee /tmp/nodes. $ | wc 1cat $PBS_NODEFILE /tmp/nodefile. $#intel/2018mpirun -rdma -machinefile /tmp/nodefile. $ -n $NP $EXEC log. $#intel/2020ttmpirun -genv I_MPI.FABRICS shm:ofi -genv FI_PR0VIDER mix -mac
9、hinefile /tmp/nodefile. $ -n$NP $EXEC log.$rm -rf /tmp/nodefile. $rm -rf /tmp/nodes. $3.2 Ansysansys.pbs#!/bin/bash#PBS N job_ansys201#PBS -1 nodes=2:ppn=2#PBS -q partimodule load ansys/2020rlinput=thermal. txtexport MPI_WORKDIR=$PBS_O_WORKDIRexport MPI REMSH=sshexport MPI IC ORDER=IBV:TCPexport MPI
10、RUN_OPTIONS=n-protncd $PBS_O_WORKDIRcat $PBS_NODEFILE ansys. hostsed i s/Wib/g ansys. hostmachines 二 uniq-c ansys. host | awk r BEGIN H= if (H=) H=$2:$l elseH=H”:$2”:n$l END print Hansys201 -b -s 一dis -machines $machines -i thermal, txt o log. $rm -rf ansys. host3.3 Fluentfluent.pbs#!/bin/sh -f#PBS
11、N job_fluent#PBS -q parti#PBS -1 nodes=2:ppn=2module load intel/2018module load ansys/2020rlinput=eddy_417k. jounprocs=wc -1 log. $daterm -rf cleanup-fluent*3.4 CFXcfx. pbs#!/bin/sh -f#PBS -N job_cfx#PBS -q parti#PBS -1 nodes=2:ppn=2module load ansys/2020rlmodule load intel/2018input=740_test. defc
12、d $PBS 0 WORKDIRexport MPIRUN 0PTI0NS=-protexport CFX5RSII二sshexport MPI_IC_ORDER=IBV:TCPexport I_MPI_DEVICE=rdssmmachine=uniq -c $PBS NODEFILE | awk 1 BEGINif (H=”) H=$2”*”$1 else( H=H,$2”*”$1 ) END print Hecho par-dist = $PAR_MACHcfx5solve - def $input -double -start-method Intel MP I Distributed
13、Parallel,r -pardist$machine |tee log.$3.5 Vaspvasp. pbs#PBS -N job vasp#PBS -1 nodes=2:ppn=2#PBS -1 walltime=1200:00:00#PBS -q parti#PBS -V#PBS -S /bin/bashmodule load intel/2018module load vasp/5. 4.4intel2018cd $PBS_O_WORKDIRNP=cat $PBS_NODEFILE | wc -fNN二 cat $PBS_NODEFILE | sort | uniq | tee /tm
14、p/nodes. $ | wc -1cat $PBS_NODEFILE /tmp/nodefile. $mpirun -rdma -machinefile /tmp/nodefile. $ n $NP vasp_std log. $rm -rf /tmp/nodefile. $3.6 Lammpslammps. pbs#PBS -N joblammps#PBS -q batch#PBS -1 nodes=2:ppn=2#PBS -S /bin/bash#PBS -Vmodule load intel/2018module load lammps/7Augl9-intel2018input=Pd
15、P. incd $PBS_O_WORKDIRNP=cat $PBS_NODEFILE | wc -NN=cat $PBS_NODEFILE | sort | uniq | tee /tmp/nodes. $ | wc -1cat $PBS_NODEFILE /tmp/nodefile. $mpirun -rdma -machinefile /tmp/nodefile. $ n $NP lmp_intel_cpu_intelmpi /tmp/nodefile. $./makeMeshdecomposeParmpirun -rdma np $NP -machinefile /tmp/nodefil
16、e. $ pimpleFoam -parallel log.$rm -rf /tmp/nodefile. $3.8 Gaussian-g09g09. pbs#!/bin/sh#PBS -N job_g09#PBS -1 nodes=l:ppn=4#PBS -1 walltime=999:00:00#PBS -q batch#PBS -Vmodule load gaussian/g09input=test0001. comcd $PBS_O_WORKDIRg09 $input.log3.9 Gaussian-gl6gl6.pbs#PBS -N job_gauss#PBS -I nodes=2:p
17、pn=2#PBS -I walltime=12:00:00#PBS -q batch#PBS -V#PBS -S /bin/bashmodule load gaussian/gl6cd $PBS_O_WORKDIRinput=if ! -e$FILENAMEthenecho $FILENAME does not exist,gl6 can not runexit 1fiLINE=cat $PBS_NODEFILE | sort | uniq | tee nodelist,$ | wc -Ii=lstring=,%lindaworker=while $i -le$LINEdonode=sed -
18、n $i p nodelist.$if $i -eq $LINE ; thenstring=$string$nodeelsestring=$string$noden,filet i+=ldonestring2=,%mem=$MEMstring3=%nprocshared=$NprocSharedrm -f nodelist.$gl6 $input.log3.10Anacondaconda.pbs#PBS -N jobjorch#PBS -I nodes=l:ppn=4#PBS -I walltime二 1200:00:00#PBS -q batch#PBS -V#PBS -S /bin/bas
19、hmodule load anaconda/3source activate pytorch-1.4.0cd $PBS_O_WORKDIRpython demo.py demo.log4 Web浏览器端作业管理登录地址::8080如果遇到安全警告,选择高级-添加例外4.1集群监控通过web端可查集群状态,资源使用情况,如下所示整体监控21:50 21:51 21:52 21:52 21:53 21 54 21:55 21:56 21:57 21:58 21:59运行C刷新18,000,00015,000,00012,000,0009.000.0006,000,0003,000,000021:5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 性能 集群 用户 使用手册 成都 中医药 大学
