中山大学曙光5000A高性能计算平台环境及使用简介 曙光5000

一、集群系统简介与登陆

本集群为曙光5000A刀片集群,主要由普通计算结点、SMP胖节点、存储结点、登录节点、管理节点、千兆以太交换网络、高速通信交换网络(Infiniband)等部分组成。集群的理论峰值为3.5万亿次。

其中计算节点为曙光TC2600刀片,共44片,每块刀片均配备2颗主频为2.0GHz的AMD4核CPU,16GB内存;SMP胖节点为曙光A950r-F,共1台,配备8颗主频为2.0GHz的AMD4核CPU,64GB内存;其他节点均为曙光A620r-FX,配备2颗主频为2.0GHz的AMD4核CPU,8GB内存;该平台配备存储20TB。

本集群基于ROCKS 5.0构建,各节点操作系统为CentOS 5.2(与RedHat Linux 企业版相应版本兼容)

集群目前使用SSH登录,登录地址为:hpc2.sysu.edu.cn

二、编译系统

1、GNU编译器:gcc v4.1.2 / gcc34 v3.4.6 / g77 v4.1.2 /gfortran v4.1.2

2、PGI编译器:PGI v7.1.4

其中pgcc, pgCC, pgf90安装位置:/data/dawning/pgi/linux86/7.1/bin

三、并行环境

1、mpich

版本:1.2.7p1

安装位置:/data/dawning/mpich-1.2.7p1/

2、openmpi

版本:1.2.8

(1)独立使用:

安装位置:GCC版:(无)

PGI版:/usr/mpi/pgi/openmpi-1.2.8/

(2)配合作业调度:

安装位置:/data/dawning/openmpi -1.2.8

3、mvapich

版本:1.1.0

安装位置:/data/dawning/hpl/ mvapich-1.1

4、mvapich2

版本:1.2p1

安装位置:/data/dawning/hpl/mvapich2-1.2p1/

5、 hpmpi

版本:2.0.1

安装位置:/opt/hpmpi/

四、作业调度系统

版本:Torque v2.1.11

安装位置:/var/spool/torque/

任务提交方法简介见第七节

五、数学库

1、ACML(无)

安装位置:/state/partition1/dawning/pgi/linux86-64/7.1-4/lib/

2、GotoBLAS

安装位置:/data/dawning/GotoBLAS/

3、LAPACK

安装位置:/data/dawning/lapack-3.1.1/

4、ScaLapack

安装位置:/data/dawning/scalapack-1.8.0/

5、MPIBLACS

安装位置:/data/dawning/BLACS/

6、FFTW v2.15

安装位置:/data/dawning/fftw2.15/lib/

7、FFTW v3.2

安装位置:/data/dawning/fftw3.2/lib/

8、NETCDF

安装位置:/data/dawning/netcdf

六、科学计算软件

1、MM5

安装位置: /data/dawning/MM5/ 以及 /data/soft/MM5/

使用方法:

su – mm5

进入算例目录 cd /data/soft/MM5

根据实际需要修改mm5.pbs

qsub mm5.pbs

[附mm5.pbs范例:

#PBS -N mm5

#PBS -l nodes=2:ppn=8

echo $PBS_NODEFILE

cd /data/soft/MM5/

/state/partition1/dawning/openmpi/bin/mpiexec -mcabtl openib,self -np 16 /data/soft/MM5/mm5.mpp.static ]

2、WRF

安装位置: /data/dawning/WRFV2/ 以及 /data/soft/WRFV2/

使用方法:

su – wrf

进入算例目录 cd /data/soft/WRFV2/test/em_real

根据实际需要修改wrf.pbs

qsub wrf.pbs

3、VASP

安装位置:/data/dawning/vasp-4.6.28/ 以及/data/soft/vasp/

使用方法:

进入算例目录 /data/soft/vasp/

根据实际需要修改vasp.pbs

qsub vasp.pbs

4、MATERIAL STUDIO

安装位置: /data/soft/MSI42/

5、CASTEP

安装位置:/data/soft/MSI42/CASTEP/

使用方法:

在.bashrc中设置环境变量

# User specific aliases and functions

# Parallel Environment Setting for Materials Studio4.3

export MS_INSTALL_ROOT=/data/user/msi/Accelrys/MaterialsStudio43/

export DMOL3_DATA=$MS_INSTALL_ROOT/Data/Resources/Quantum/DMol3

export DMOL_TMP=~/scratch

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/user/msi/Accelrys/LicensePack/linux/lib/

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$MS_INSTALL_ROOT/lib

export TMPDIR=$DMOL_TMP

export PATH=$PATH:~/Accelrys/MaterialsStudio43/etc/CASTEP/bin/ . ~/Accelrys/LicensePack/etc/lp_profile

eval `~/Accelrys/MaterialsStudio43/share/license/data/lic_setup.sh ~/Accelrys/MaterialsStudio43/ -s sh`

进入算例文件夹,如/data/usr/msi/算例文件夹

qsub msi.pbs

6、WIEN2k

安装位置: /data/soft/wien2k08

7、SIESTA

安装位置:/data/soft/siesta-2.0.2/

使用方法: qsub siesta.pbs

七、作业调度系统使用简介

使用本集群的所有用户,均应通过Torque作业调度系统提交任务,作业提交与管理方式,参照以下介绍的命令。

1、后台提交作业qsub

语法: qsub [-a date_time] [-A account_string] [-epath] [-h] [-I] [-j join] [-k keep] [-l resource_list] [-mmail_options] [-n Node_allocation_Method [-L v1,[v2,[v3,[v4]]]]][-M user_list] [-N name] [-o path] [-p priority] [-q pool] [-r y|n][-u user_list] [-v variable_list] [-V] [script]

参数: script参数被省略时,该命令可以从标准输入获得脚本文件名。

-a间。格式为[[[[CC]YY]MM]DD]hhmm[.SS]。CC表示世纪,YY表示年(后两位数字),MM表示月(两位数字),DD表示天(两位数字),hh表示小时(两位数字),mm表示分(两位数字),SS表示秒(两位数字)。如果DD指定的是未来日子,而未指定MM,则MM缺省值为当前月,否则,MM的缺省值为下个月。如果hhmm指定的未来时间,而未指定DD,则DD的缺省值为当天,否则,DD的缺省值为明天。如果提交作业时使用该选项,当指定时间还没到时,作业状态显示为”W”。

-e指定错误输出文件名,格式为[hostname:]path_home。Hostname是返回错误输出文件的主机名,path_home是错误输出文件的绝对路径,如果指定了相对路径,则相对用户的主目录。不使用该选项时,缺省值是在用户主目录下,以“作业名.e作业ID”命名的文件

-o指定输出文件名,格式为[hostname:]path_home。缺省值是在用户主目录下,以“作业名.e作业ID”命名的文件

-h 指定在提交作业时,设置用户级’u’挂起。如果不指定,则设置挂起类型为’n’,即不挂起。

-I 指定作业以交互方式运行。

-j指定合并错误输出和实际输出。如果指定’oe’,则合并到标准输出文件中;如果指定’eo’,则合并到标准错误输出文件中.

-k指定执行主机是否保留错误输出和实际输出。如果指定‘o’,则仅保留标准输出;如果指定’e’,则仅保留标准错误输出;如果指定’oe’或‘eo’,则保留标准输出和标准错误输出;如果指定’n’,则不保留任何输出。

-l 指定作业所需要的资源,设定对可消耗资源的限制。如果不设置,则无限制。例如:resource_name[=[value]][,resource_name[=[value]],…]

LINUX系统可以设置的资源有cput, file, pcput, pmem, pvmem,vmem, walltime, arch, nodes, ncpus等;

Cput指作业的所有进程使用cpu最长时间;

File指作业可以建立单个文件大小的最大限制;

Pcput指作业的单个进程可以使用CPU的最长时间;

vmem指作业可以使用的物理内存的最大值;

Pmem指作业的单个进程可以使用的物理内存的最大值;

Pvmem指作业的单个进程可以使用的虚拟内存的最大值;

walltime指作业处于运行状态的最长时间;

arch 指定系统管理员所定义的系统结构类型;

host指定作业运行的主机名;

nodes指定作业独占使用的结点数目和属性,使用“+”可以连接多种结点的定义。

结点的属性和主机名或数目之间通过“:”分隔。如果不指定结点数,则缺省为1。结点的属性包括ppn(每个结点上的进程数,缺省为1)和系统管理员设置的属性(如batch、bigmem)

例如:请求12个结点,不管其属性

-l nodes=12

请求12个属性为batch的结点和14个属性为bigmem的结点

-l nodes=12:batch+14:bigmem

请求4个结点,每个结点上使用2个CPU

-l nodes=4:ppn=2

software 指作业要求的软件包

-m 定义何时给用户发送有关作业的邮件。可设定的选项有:

n 不发送邮件

a 当作业被批处理系统中断时,发送邮件

b 当作业开始执行时,发送邮件

e 当作业执行结束时,发送邮件

-M指定发送有关作业信息的邮件用户列表。格式为user[@host][,user@[host],…]缺省值为提交作业的用户。

-N 指定作业的名字。缺省值为脚本的名字,如果没有指定脚本,则为STDIN。

-p 指定作业的优先级,优先级的范围是[-1024, +1023]。缺省值是没有优先级。

-q 指定作业的目的地(结点池),目的地可有三种格式:

pool

@server

pool@server

-r y|n指定作业是否可重新运行。指定‘y’时,作业可以重新运行;指定’n’时,作业不能重新运行。缺省值为’n’。

-v格式为variable1,variable2,…或variable1=value,variable2=value,…这些变量和其值可以传递到作业中。

-V 指定qsub命令的所有的环境变量都传递到批处理作业中。

作用: 以脚本文件的形式向批处理服务器提交作业。

举例:

运行MPI程序的脚本cpi.ljrs如下:

#!/bin/sh

### Job name

#LJRS -N test

### Declare job non-rerunable

#LJRS -r n

### Output files

#LJRS -e test.err

#LJRS -o test.log

### Mail to user

#LJRS -m ae

### pool name (small, medium, long, verylong)

#LJRS -q dque

### Number of nodes (node property ev67 wanted)

#LJRS -l nodes=8:batch

# This job’s working directory

echo Working directory is $LJRS_O_WORKDIR

cd $LJRS_O_WORKDIR

echo Running on host ‘hostname‘

echo Time is ‘date‘

echo Directory is ‘pwd‘

echo This jobs runs on the followingprocessors:

echo ‘cat $LJRS_NODEFILE‘

# Define number of processors

NPROCS=‘wc -l < $LJRS_NODEFILE‘

echo This job has allocated $NPROCS nodes

# Run the parallel MPI executable “a.out”

mpirun -v -machinefile $LJRS_NODEFILE -np $NPROCScpi

1、把脚本文件cpi.ljrs提交到结点池dque中运行。

$ qsub cpi.ljrs

35.console

$ qstat

Job id Name User TimeUse S Pool

35.console cpi zhangxq 0:00:00 R dque

2、把脚本作业cpi.ljrs提交到结点池long中运行,并且当作业开始运行时,给用户发送电子邮件。

$qsub -P long -m b cpi.ljrs $qstat

Job id Name User TimeUse S Pool

36.console cpi zhangxq 0 R long

3、使用15个结点运行cpi.ljrs,运行时间不能大于2小时,作业占用的内存能大于15mb

$qsub –l nodes=15,walltime=2:00:00,mem=15mbcpi.ljrs

4、综合考虑CPU、内存、缓冲区、硬盘等因素的使用情况,设置其权值分别为5, 4, 3, 2.

$qsub –l nodes=5 -n syn –L 5, 4, 3, 2 cpi.ljrs

5、使用-I和–l选项在指定的结点上交互式运行作业

$ qsub –I -l nodes=c0101

运行该命令后,系统将自动切换到c0101的虚拟终端,所有的标准输入和标准输出和标准错误输出均都显示在该终端上.在系统出现”waiting to jobid tostart”时,用户若按^C键,即可中断该交互作业.当该交互作业已经启动后,用户除了交互式运行作业外,还可进行以下操作:

~. 该命令将使qsub退出,且终止作业。

~^Z挂起qsub,作业依然保持运行状态,无任何输入输出。用户可以在本地shell上提交命令。

~^Y部分挂起qsub,因为还可以给作业发送输入,而且接受作业的输出的同时,还可以在本地shell提交命令。

2、查看状态qstat

语法:qstat [-f][-W site_specific] [job_identifier...| destination...]

qstat -Q [-f][-W site_specific][destination...]

qstat -B [-f] [-W site_specific][server_name...]

参数:destination可以为pool,@server,pool@server

作用:查看作业、结点池和批处理服务器的状态。命令格式一可以输出所指定作业ID或者结点池 中所有作业的状态,命令格式二可以输出每个结点池的状态信息,命令格式三可以输出服务器的状态。

举例:

1. 显示已经配置的所有结点池状态信息。

qstat -q

2. 显示已经提交的作业状态信息

qstat -a

3. 显示指定作业的所有状态信息

$ qstat -f 23.console

mtime = Sun Apr 28 19:54:48 2002

Output_Path = console:/home/zhangxq/cpi.o23

Priority = 0

qtime = Sun Apr 28 19:54:48 2002

Rerunable = True

Resource_List.cput = 00:00:59

Resource_List.nodect = 2

Resource_List.nodes = 2:ppn=1

Variable_List =LJRS_O_HOME=/home/zhangxq,LJRS_O_LANG=en_US

……

4. 显示服务器的状态

$qstat –B

Server Max Tot Que Run Hld Wat Trn Ext Status

console 0 0 0 0 0 0 0 0 Active

3、查询作业qselect

语法:qselect [-a [op]date_time] [-A account_string][-h old_list] [-l resource_list] [-N name] [-p [op]priority] [-qdestination] [-r y|n] [-s states] [-u user_list]

参数:op表示某一个作业属性值和选项参数值之间的关系。如

.eq. (等于)

.ne. (不等于)

.ge. (大于或等于)

.gt. (大于)

.le. (小于)

其它参数含义见qsub命令。

作用:列出符合选项要求的作业ID。这些作业来自于单个服务器。如果没有任何选项,该命令则列出该用户被授权的服务器上的所有作业。对那些普通用户来说,该命令只显示该用户所提交的作业。

举例:

1. 查询用户所提交的作业

$ qsub -q long cpi.ljrs

28.console

$ qselect

25.console

28.console

2. 查询指定结点池中的作业

$ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 Q dque

29.console cpi zhangxq 0 R long

$ qselect -P dque

25.console

3. 查询指定主机上的作业

$ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 Q dque

29.console cpi zhangxq 0 R long

$ qselect -P @console

25.console

29.console

4、挂起作业qhold

语法:qhold [-h hold_list] job_identifier …

作用:挂起批处理作业。挂起有三种类型:普通用户级‘u’、管理员级(操作员级)‘o’、系统级‘s’,缺省值为不挂起‘n’。用户只能在用户级别挂起自己提交的作业,操作员可以在用户级和操作员级挂起任何作业,系统管理员可以在任何级别上挂起任何作业。

在执行该命令时,如果作业在运行结点池里排队,那么作业将直接被挂起;如果作业处于运行状态,为了中断作业的执行,必须采取其他办法。如果被挂起作业的主机系统支持一致点检查或者重新启动,则挂起正在运行作业将引发以下操作:首先检查作业的一致性,然后释放该作业所占用的资源,最后该作业位于执行结点池中,处于挂起状态;如果被挂起作业的主机系统不支持一致点检查或者重新启动,则仅设置指定的挂起作业类型,而实际上并不能挂起,除非调用qrerun命令重新运行该作业时,该挂起请求才生效。

举例:

1. 使用普通用户身份挂起作业

$ qhold -h u 25.console $ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 H dque

2. 以操作员身份挂起作业

$ qhold -h o 25

qhold: Unauthorized Request 25.console

$ su root

$ qhold -h o 25

$ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 H dque

5、释放作业qrls

语法:qrls [-h hold_list] job_identifier ...

作用:释放被挂起的批处理作业。由于作业的挂起有三种类型:USER、OPERATOR和SYSTEM。所以,要释放不同类型的作业挂起,用户就必须具有相应的权限。缺省为USER级

举例:释放在普通用户和操作员级被挂起的作业。

$ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 H dque

$ qrls -h uo 25

$ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 Q dque

6、重新运行作业qrerun

语法:qrerun job_identifier ...

作用:重新运行所指定的作业。

举例:如果作业允许别重新执行(缺省值是可以重新运行)。ROOT用户运行该命令,可以终止本次运行,把该作业放入其原来所在的结点池中,重新运行。

$ qrerun 27

qrerun: Unauthorized Request 27.console

$ su – root

$ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 Q dque

27.console cpi zhangxq 0 R dque

$ qrerun 27

$ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 Q dque

27.console cpi zhangxq 0 R dque

7、更改作业属性qalter

语法:qalter [-a date_time] [-A account_string] [-epath] [-h hold_list] [-j join] [-k keep] [-l resource_list] [-mmail_options] [-M user_list] [-N name] [-o path] [-p priority] [-rc] [-u user_list] job_identifier...

参数:各参数的含义见qsub命令。

作用:更改批处理作业的属性。主要修改所指定作业ID的相关属性(选项表中所列出的属性)。

举例:1. 更改批处理作业的运行时间属性。

$ qalter -a 0309251000 23.console

中山大学曙光5000A高性能计算平台环境及使用简介 曙光5000

2. 更改给用户发送邮件的时间为作业中止和运行结束时

$ qalter –m ae 23.console

8、删除作业qdel

语法:qdel [-W delay|force] job_identifier ...

参数:-W 当指定delay 时,表示在删除作业前需要等待的时间(秒)

当指定force时,强制删除该作业。

作用:删除批处理作业。按照命令行中所指定的作业ID的顺序来删除作业。

举例:$ qstat

Job id Name User TimeUse S Pool

22.console cpi zhangxq 0 Q long

$ qdel 22

9、给作业发送消息qmsg

语法:qmsg [-E] [-O] message_string job_identifier...

参数:-E 将消息串写入错误输出文件

-O将消息串写入输出文件

作用:给批处理作业发送消息。该命令通过给作业的所有者(批处理服务器)发送消息,从而把消息写入作业的输出文件,也就是说,该命令并不是直接把消息写入作业的输出文件。

举例:给正在运行的作业发送消息,该消息被写入所指定作业的错误输出文件中。

$ qstat

Job id Name User TimeUse S Pool

25.console cpi zhangxq 0 Q dque

26.console cpi zhangxq 0 R dque

$ qmsg “The job is running” 26

$ more cpi.e26

The job is running

10、在结点池之间移动作业qmove

语法:qmove destination job_identifier ...

参数:destination可以为结点池名

作用:把批处理作业移到其他结点池中去运行。即把作业从所在的结点池中删除,并放在其他结点池中。

举例:

$ qstat

Job id Name User TimeUse S Pool

22.console cpi zhangxq 0 Q dque

$ qmove long 22

$ qstat

Job id Name User TimeUse S Pool

22.console cpi zhangxq 0 Q long

11、给作业发送信号qsig

语法:qsig [-s signal] job_identifier ...

参数:参数signal可以为信号名称,如SIGKILL,KILL,SIGNULL或者无符号整数,如9、0。

作用:给正在运行的批处理作业发送信号。如果不指定-S选项,则发送“SIGTERM”信号。如果有下列原因之一,如用户无权给作业发送信号、作业未处于运行状态和该信号请求对作业所运行的系统无效,则拒绝执行该命令请求。

12、查看和管理结点ljrsnodes

语法:ljrsnodes [- {c|o|r}] [nodename …] ljrsnodes -{a|l }]

参数:-a 列出所有结点及其属性,属性包括“state”和“properties”

-c 清除结点列表中的“offline”或“down”状态设置,使结点可以被分配给作业。

-l 以行的方式列出被标记的结点的状态 -o将指定结点的状态标记为“offline”。这将帮助管理员暂时停止某些结点的服务。

-r 清除指定结点的“offline”状态

作用:该命令可以标记结点的状态为“offline”、“down”或“free”,也可以帮助用户查看结点信息。除了”-a”和“-l”选项外,使用其他选项需要拥有操作员和管理员权限。

举例:1、查看所有结点信息

ljrsnodes -a

2、将结点标记为“offline”状态

ljrsnodes –o c0108

3、清除结点的“offline”状态设置

ljrsnodes –c c0108 或 ljrsnodes –r c0108

13、查看所有计算结点的状态shownodes

语法:shownodes [-h]

作用:按照结点池分类显示各结点池中结点的状态,结点状态以不同颜色显示。并在结点名后以数字代表可用CPU数和总共CPU数。例如c0101-2/2,表示c0101结点可用2CPU总共2CPU,c0102-1/2表示C0102可用1CPU总共2CPU。

举例:$shownodes –h

  

爱华网本文地址 » http://www.aihuau.com/a/25101016/287594.html

更多阅读

Facetime收费及使用? 一直提示facetime收费

Facetime收费及使用?——简介Face Time已经被大家耳熟能详了,那么关于Face Time有过哪些纠纷呢?Face Time怎么使用呢?用Face Time来打电话需要收费吗?如果不收费很多人都在使用Face Time来通话

分享ugly meter丑脸评分超给力结果及使用过程! ugly monster

丑脸评分ugly meter正是张柏芝参加《快乐大本营》那期节目中吴昕提到的那款手机软件。ugly meter丑脸评分是已经娱乐行软件,是恶搞朋友的必备神奇,使用起来非常的简单拍个照美丑立刻现行!得出的分钟越低越美,相反分数越高就证明您长的很

如何安装及使用HYPER-V微软虚拟机教程 微软虚拟机 hyper v

如何安装及使用HYPER-V(微软虚拟机教程)——简介 Hyper-V是微软的一款虚拟化产品,是微软第一个采用类似Vmware和Citrix开源Xen一样的基于hypervisor的技术。这也意味着微软会更加直接地与市场先行者VMware展开竞争。Hyper-V作为Windows

浴霸的危害及使用注意事项 浴霸使用注意要点

浴霸的危害及使用注意事项——简介现代家庭浴室一般靠浴霸取暖,人们冬季洗澡时喜欢四个灯泡全部点亮,如果浴霸每个灯泡的瓦数均为275瓦,那么四个灯泡加在一起就是1100 瓦,会产生强光污染。浴霸的危害及使用注意事项——方法/步骤浴霸的

声明:《中山大学曙光5000A高性能计算平台环境及使用简介 曙光5000》为网友薰衣草的美分享!如侵犯到您的合法权益请联系我们删除