收藏 分享(赏)

深圳超算HPC使用手册v3.2.pdf

上传人:精品资料 文档编号:9510446 上传时间:2019-08-11 格式:PDF 页数:51 大小:1.34MB
下载 相关 举报
深圳超算HPC使用手册v3.2.pdf_第1页
第1页 / 共51页
深圳超算HPC使用手册v3.2.pdf_第2页
第2页 / 共51页
深圳超算HPC使用手册v3.2.pdf_第3页
第3页 / 共51页
深圳超算HPC使用手册v3.2.pdf_第4页
第4页 / 共51页
深圳超算HPC使用手册v3.2.pdf_第5页
第5页 / 共51页
点击查看更多>>
资源描述

1、1深圳超算HPC使用手册v3.2系统运行部2015年9月1日2更新记录2015/8/12-Ver3.1更新项目 更新状态VPN登陆方式的改变说明。 已完成去除龙芯相关内容。 已完成排版规划以及内容更新。 施工中文档字体规范(暂定)正文字体:微软雅黑三号标题1字体:微软雅黑二号标题2字体:微软雅黑三号表格字体:微软雅黑五号3目录目录31. 基本环境62. 系统软件环境82.1 操作系统82.2 作业调度系统82.3编译器和并行实现.82.4 公共软件位置93. 使用方法113.1 登录和传输文件123.1.1VPN登陆.123.1.2 终端登录.133.2 编译.163.3 作业提交17web方

2、式提交作业.17命令行方式提交作业203.4 作业管理22附件A.常用的作业提交模板.2641 普通串行计算.262 普通MPI并行作业273 多个计算步骤的计算脚本.274 共享内存(openmp)并行作业295OpenMP+MPI 混合并行作业296mpich2并行作业(RAW方式)31附录B:商用软件使用方法.341Fluent软件.342ANSYS软件.363CFX软件384ABAQUS软件405MARC软件426NASTRAN软件447LSDYNA软件.468DYTRAN软件489HFSS软件50附录C:技术支持5156国家超级计算深圳中心采用由中科院和曙光公司联合研制的曙光6000

3、超级计算系统,该系统整体计算能力实测峰值为1.271千万亿次浮点运算(1.271PFLOPS)。于2011年11月16日投入运行。本文主要介绍曙光6000超级计算系统的使用方法和环境。1. 基本环境为了方便管理和使用,曙光6000超级计算系统高性能计算区分成4个逻辑分区可供所有用户使用,用户可以根据不同的业务需求选择适合自己计算类型的分区。分区名 GG分区 GK分区 FN分区 YW分区节点数 960 640 128 520CPU型号 Intel5650 Intel5650 AMD6136 Intel5650CPU核数 12 12 32 12CPU主频 2.66GHz 2.66GHz 2.4GH

4、z 2.66GHz内存 24G 24G 128G 48GIB网络 20G 20G 20G 20G本地硬盘 149G 149G 300G 149G共享硬盘 256T 835T 256T 1800T7曙光6000超级计算主机系统的存储分为两种:每个计算节点配备的本地磁盘和由存储节点建立的高速并行文件系统。其中本地硬盘不建议普通用户大量使用,仅供计算节点操作系统使用(以及计算所需的临时文件),用户的所有操作都应该在账号所对应的$HOME(该$HOME所在的位置为高速并行文件系统)下进行,用户登录时,会自动被引导到自己账号的$HOME下面。鉴于存储空间的有限和数据安全的考虑,请用户务必做到及时下载计算

5、结果文件并清理空间。用户可以通过VPN验证后使用ssh工具进入登录节点,使用LSF作业调度系统提交作业。由于考虑到如果用户在公共节点运行可能会引起节点宕机的测试程序,中心禁止在登录节点运行程序以及下载数据。程序编译请登陆后跳转到编译节点,数据传输请连接ftp服务器进行上传以及下载。82. 系统软件环境2.1 操作系统计算节点和前端接入节点的操作系统均为64为SuSELinuxEnterpriseServer(SLES)11SP1,提供标准的64位Linux操作系统环境。用户需要熟悉一些基本的Linux命令行操作,特别是文件目录操作,并能熟练使用一种编辑器(vi或emacs等)。2.2 作业调度

6、系统目前在曙光6000超级计算机上使用的作业管理系统是IBMPlatformLSF8.0.2(LoadSharingFacility)作业管理系统。2.3编译器和并行实现曙光6000主机系统支持OpenMP和MPI两种并行方式。OpenMP为共享内存方式,仅能在一个计算节点内并行,最大线程数不能超过该节点处理器核心数(GG/GK/YW分区为12,Fn分区为32)。MPI则是分布式并行,计算作业可以在一个或者若干个节点上进行,最大进程数仅受用户账号所能调用的CPU总数限制。目前常见的支持InfiniBand网络的MPI实现是MVAPICH2和OpenMPI。92.4 公共软件位置编译器GG/GK

7、分区共安装3套编译器:系统自带 gnu4.3.4(gcc,g+,gfortran) intelcompiler2011(icc,icpc,ifort) pgicompiler2011(pgcc,pgcpp,pgfortran)(目前只能在gg0110,gk0110上使用)使用intel或者pgi编译器之前先source对应环境变量,source/home-gg/env/intel-12.1.sh或者source/home-gg/env/pgi-2011.sh10MPI库MPI库安装在/home-gg/compiler/mpi下。目前有 mpich2-1.4.1p1-gnu.sh mpich2-

8、1.4.1p1-intel.sh mpich2-1.4.1p1-pgi.sh mvapich2-1.8a1p1-gnu.sh mvapich2-1.8a1p1-intel.sh mvapich2-1.8a1p1-pgi.sh openmpi-1.4.4-gnu.sh openmpi-1.4.4-intel.sh openmpi-1.4.4-pgi.sh在/home-gg/env目录下分别有设置编译环境的脚本,用户可以source脚本,如用户想使用openmpi1.4.4的gnu版本,命令为:source/lsfhome/env/openmpi-1.4.4-gnu.sh或者./lsfhome/e

9、nv/openmpi-1.4.4-gnu.sh注意:如果您使用的是tcsh或者zsh,请根据环境脚本自行编写113. 使用方法外网用户只能通过VPN访问曙光6000超级计算集群。一般作业的基本步骤如下: VPN登陆-用户通过网页访问VPN页面并获取访问权限 算例上传-通过FTP工具将模型数据文件和脚本文件上传至FTPserver。 作业提交-利用Putty工具或其他SSH工具登陆曙光6000计算机,提交命令提交脚本文件进行计算。 作业监控-通过Putty工具方式登录超级计算机,采用作业管理命令监控作业的执行情况。 结果下载-计算完成后,通过ftp工具从FTPServer 下载结果文件。 VPN

10、登陆 FTP登陆上传下载数据访问登陆节点提交作业与监控作业访问编译节点进行软件编译123.1 登录和传输文件3.1.1VPN登陆VPN登陆地址 https:/ 用户名和密码,即可访问。成功登录后,并点击启动按钮,若显示已成功网络拓展服务,则表明登录VPN成功。133.1.2 终端登录在使用VPN成功登录超算中心后,可以使用xshell等工具登录超级计算机。曙光6000超级计算机的内部登录节点IP:计算分区 登录节点名 IP地址用于登陆GG、GK计算分区 gcn01 10.68.0.1gcn02 10.68.0.2gcn03 10.68.0.3gcn04 10.68.0.4FN计算分区 fncn

11、01 10.68.0.33fncn02 10.68.0.34fncn03 10.68.0.35fncn04 10.68.0.36YW计算分区 ywcn01 10.70.4.41ywcn02 10.70.4.42FTP节点GG、GK计算分区 gcn12 10.68.0.12gcn13 10.68.0.13gcn14 10.68.0.14FN计算分区 fncn09 10.68.0.41fncn10 10.68.0.4214YW计算分区 ywcn05 10.70.4.45ywcn06 10.70.4.46编译节点GG、GK计算分区 gg0110 编译节点不可以直接访问,请从登陆节点ssh节点名 直接

12、跳转即可。无密码访问。gg0111GG、GK计算分区 gk0110gk0111FN计算分区 fn001fn002YW计算分区 yw0410yw0411下面以以putty为例演示曙光6000超级计算机的登录过程。登录通用刀片计算区的示例如下:15点击“Open”或回车后会提示需要输入用户口令和密码,如下图:输入正确后如下:此时可执行Linux命令,例如登录GK分区的编译节点,可执行命令:sshgk0110163.2 编译账号成功登录后,首先进入的是登录节点。用户可以在登录节点查看目录、编辑文件、查看作业、查看资源使用情况等。但是用户不允许在登录节点运行计算程序或前后处理程序,也不允许进行程序编译

13、。用户可以从登录节点转移到编译节点进行程序编译。以上编译节点仅为用户提供编译软硬件平台,用户可在登录节点,通过ssh登录到编译节点。编译节点共提供三套编译器环境:GCC4.3、intel12.1、PGI2011;三套MPI运行环境:openmpi、mpich2、mvampich。若要使用PGI编译器的,请在gk0110、gg0110、以及fn001上编译。LSF系统默认使用openmpi,若需使用其他mpi环境,需要在LSF作业脚本中进行指定。使用任意一种编译器和MPI库都推荐先在$HOME/.bashrc中将环境脚本写入。例如:在gk分区使用mpich2前,先在.bashrc中加入sourc

14、e/home-gk/env/intel-12.1.shsource/home-gk/env/mpich2-1.4.1p1-intel.sh173.3 作业提交用户一般可通过2种方式提交作业:web方式和命令方式。下面分别介绍以上两种方式的提交方法。 web方式提交作业web方式提交作业主要针对商业高性能计算软件(Abaqus、ADF、ANSYS、CFX、DYTRAN、FLUENT、HFSS、LS-DYNA、MARC、NASTRAN等)的用户使用,提供web方式提交作业的分区为工程计算分区(GG分区)和胖节点分区(FN分区),其对应网址为:作业提交分区 对应webIP地址工程计算分区 http:

15、/10.68.0.5:18080http:/10.68.0.6:18080胖节点计算分区 http:/10.68.0.37:18080http:/10.68.0.38:1808018具体的使用步骤如下图:在此输入用户名和密码正确后,可进入使用界面,如下图:点击左侧的“作业提交”后,进入作业提交界面:19例如要提交ABAQUS作业,则在中间窗口双击ABAQUS后,即可进入ABAQUS作业提交界面,如下图:输入相应的参数,并上传需要的计算文件后,点击提交作业按钮,即可完成作业的提交。20 命令行方式提交作业一般计算任务是通过脚本文件提交到作业管理系统的,脚本文件是一个常规文本文件,具有执行权限,可

16、以直接在登入节点使用vi编辑器编写,也可异地编写上传至用户作业工作目录,但要注意dos2unix转换一下。脚本文件名无特殊规定,起一个可识别的名字即可。编辑完成脚本文件后,将脚本赋予可执行权限,然后提交。例如对一个名称为mytest.lsf的作业脚本文件,编辑完成后,需要执行命令chmod755mytest.lsf赋予执行权限,然后用命令bsubmytest.lsf来提交。使用bsub命令提交作业,待作业提交成功后,会给出提交成功的作业ID号,用bjobsID命令可以查看作业运行状态,通用刀片计算区的通用队列如下表:计算队列 队列说明intelg_small 核数12,运行时间没有限制例如:用

17、户需要使用GK分区提交96核的计算作业,则选择使用intelk_small队列。作业脚本范例:注意:请将编译器和MPI库的环境先写入$HOME/.bashrc文件中APP_NAME=intelg_small #指定计算任务所要进入的队列NP=128 #计算所需的全部核数NP_PER_NODE=12 #每节点所需核数(最多不超过12),本参数可以省略RUN=“/home-gg/users/tjf/mytest -cmd_line_options“ #可执行文件的全路径和命令参数脚本参数含义:APP_NAME:指定作业运行使用的队列名称.NP:指定作业运行需要的核数,如果该参数不指定,则缺省值为1

18、个核。NP_PER_NODE:指定每个节点上最多分配给作业运行的核数。刀片区NP_PER_NODE必须小于或等于12。建议不指定此参数。如果不指定此参数,系统默认会对AMD_long队列以 NP_PER_NODE=32来分配资源,对提交到AMD_small和AMD_mid队列中的计算作业,则会搜寻所有可用的资源,每节点上的核数有可能不相等。RUN:指定具体执行的命令参数,必须用双引号“将命令行引起来。例如:手动运行一个openmpi程序的命令为:mpirun-np4-machinefilemachinefile/home-gg/user/tjf/mytest,此时脚本里面就要写成RUN=“/h

19、ome-gg/user/tjf/mytest“,系统会自动加载前面的22mpi 参数。如果用户的作业由很多过程组成,建议使用使用RAW方式,即RUN=“RAW“,然后在脚本后面编写完整的运行脚本.MY_MPI_TYPE:指定作业需要运行的MPI类型,该参数为可选参数,目前超算系统默认MPI环境为openmpi1.4.4(intel编译器)。支持的MPI类型有三个openmpi,mvapich2,mpich2.MY_MPI_HOME:用户可以自行指定自己的MPI的路径,该路径下必须存在bin目录,所有相关的MPI的命令必须在其bin目录下,否则可能会导致作业找不到相关命令而失败。注意:严禁使用任

20、何前台或者后台方式直接由用户运行程序,所有的计算都必须作为任务提交到LSF系统然后统一调度执行,否则影响用户程序运行。233.4 作业管理下面列出常用的作业管理命令,如果需要更详细的资料可以参考作业调度系统LFS相关手册或者使用系统的man手册。bsubjob_name 提交 LSF 任务,成功后会给出此任务的ID。job_name应有执行权限(chmod+xjob_name)bjobs 查看自己的所有运行任务情况;说明:输入 bjobs 后,会列出当前用户正在运行的所有作业,最左边一列数字是每个作业的 JOBID,一些其他命令使用的时候需要调用这个 JOBID。bjobs-l 查看所有运行任

21、务的详细情况bjobs-lJOBID 查看 JOBID 这个任务的详细情况bpeek-fJOBID 跟踪查看某任务屏幕输出 bpeekJOBID查看全部输出bkillJOBID 终止某任务运行bkill JOBID1 JOBID2JOBID3 终止多个任务运行busers 查看用户当前所有任务情况bqueues查看所有任务队列的状态bhostsgg0112 查看节点的作业使用信息lsloadgg0112 查看节点的即时负载信息24执行busers命令的屏幕输出如下:MAX 用户可用核数上限NJOBS 已提交作业所需要的全部核数PEND 正在队列中等待执行的作业所需全部核数RUN 正在运行的作业

22、所使用的全部核数SSUSP 系统挂起的用户作业所使用核数USUSP 用户自行挂起的作业所使用核数RSV 系统为你预约保留的核数一个作业提交到队列后,将有可能为以下的几种状态之一:PEND 任务在队列中排队等待RUN 任务正在执行PSUSP 任务在队列中排队等待时被用户挂起SSUSP 任务被系统挂起USUSP 任务被用户自行使用bstop命令挂起DONE 作业正常结束,exit代码为0EXIT 作业退出,exit代码不为0bqueues可以用来查询当前系统能够提供的队列情况:25其中:QUEUE_NAME 对应的队列名称。PRIO 对应的优先级STATUS 队列目前的状态MAX 队列使用核的最大

23、值JL/U 每个用户能够在该队列上使用的最大核数JL/P 每个处理器能够在该队列上使用的最大核数JL/H 每个计算节点在该队列上使用的最大核数NJOBS 当前队列的作业数PEND 当前排队的作业数RUN 当前执行的作业数SUSP 当前暂停的作业数26附件 A.常用的作业提交模板1 普通串行计算APP_NAME=intelg_small#指定计算任务所要进入的调度队列NP=1#任务所需核数RUN=“mytest“#执行计算命令,如果不在系统查找目录里则给出全路径名这里 RUN 中给出的计算命令,可以是一个可执行的计算程序,也可以是一个执行一系列计算的脚本,两者跟通常在 bash 等 shell

24、中一样,不加太多区分地执行,但推荐mytest为一个mpi二进制程序,如果需要执行一系列过程,参考附件A.3。提交前source导入编译器环境变量,或者事先在$HOME/.bashrc 加 入 ; 如 果 不 使 用 默 认 的openmpi-1.4.4-intel,请指定 MY_MPI_TYPE(可选openmpi, mvapich2, mpich2)或者 MY_MPI_HOME(用户自己MPI路径)272 普通MPI并行作业APP_NAME=AMD_mid #指定计算任务进入 AMD_mid调度队列NP=24 #任务需要的核数,最好是偶数,如4,8,16,24等NP_PER_NODE=12

25、 #每节点要求的核数RUN=“/path/to/vasp“ #执行计算命令,如果不在系统查找目录里则给出全路径名系统会自动调用 mpirun 并给出适当的-n 和-machinefile 参数,不需要在此显式地给出。采用这种方式提交,可执行文件必须是一个二进制的 MPI 程序,不能为含有 mpirun 命令的脚本或者其它脚本。3 多个计算步骤的计算脚本很多情况下,计算是由预处理、并行计算和后处理分析,或者串行计算和 MPI 并行计算混杂的方式进行。也有一些软件的计算脚本,既有串行计算和串行处理命令,又有并行计算命令。此时可以按照下面的例子改写脚本。#!/bin/shAPP_NAME=“inte

26、lg_small“#计算任务进入的队列NP=48 #计算任务需要的核数NP_PER_NODE=12 #每个节点上使用12个核RUN=“RAW“#固定格式,如果RUN的内容为RAW,下面的计算才会生效#如果使用RAW方式,强烈建议加上以下两条source已重新加载编译器环境和mpi环境source/home-gg/env/intel-12.1.shsource/home-gg/env/openmpi-1.4.4-intel.sh28./home-gg/user/tjf/prepare-cmd_line_options #串行处理或者计算.#mpiexec后无需np和machinefile参数,系

27、统自带openmpi和mvapich2已与LSF集成mpiexec/home-gg/user/tjf/mpi_calc-cmd_line_options./home-gg/user/tjf/postprocessing#后处理可以继续其它串行或者并行计算. 超算提供的openmpi,mvapich2和mpich2都已经和LSF作业系统集成,用户在脚本中不需要显式指定计算使用的核数和节点列表,可直接使用mpiexec/path/to/exe,但mpich2默认使用的是以太网通信,为了通过IPoIB的方式使用Infiniband网络,需要做一些修改. 如果用户使用自己编译的MPI库,请将mpiex

28、ec行替换为:mpiexec-np$NP-machinefile$LSB_DJOB_HOSTFILE/home-gg/user/tjf/mpi_calc-cmd_line_options294 共享内存(openmp)并行作业这类作业既包括 OpenMP 并行方式的,也包括不使用OpenMP 而是通过 POSIX 等系统底层线程库所编写的多线程程序,概言之,任何多线程程序都通过下面方式提交计算。最典型的就是 Gaussian 量化软件。注意对这类程序,性能随着 核 数的增加,不一定会线性增加甚至会下降。通常用 4 个进程即可,可以通过典型算例在4、8、12、24 个线程下的计算速度来确定。#!

29、/bin/shAPP_NAME=intelk_small#指定计算任务进入调度队列NP=4#任务需4个 核执行亦即四个进程NP_PER_NODE=4#每节点要求有4个核 可用RUN=“RAW“#固定格式说明export OMP_NUM_THREADS=$NP#设置 OpenMP 线程数环境变量/home-gg/user/tjf/mytest#执行计算命令的路径5 OpenMP+MPI 混合并行作业由上所述(在此以胖节点计算分区为例),OpenMP+MPI并行方式,通常情况下可以采用每节点上的32 个核心,分为四组,每组由一个 MPI 进程,产生并管理八个 OpenMP 线程的配置。这也是推荐的

30、并行作业负载分配。308 个 MPI 进程每进程 4 个 OpenMP 线程4 个 MPI 进程每进程 8 个 OpenMP 线程2 个 MPI 进程每进程 16 个 OpenMP 线程1 个 MPI 进程每进程 32 个 OpenMP 线程以上是四种并行负载分配方案,可以通过典型算例做性能测试,以决定采用哪一种。下面用 m 代表 MPI 进程数,k 代表每 MPI 进程产生和管理的 OpenMP 线程数。请注意 mk=32。#!/bin/shAPP_NAME=AMD_smallNP=32NP_PER_NODE=12RUN=“RAW“M=mK=krm f./hosts.listcp$LSB_DJOB_HOSTFILEhosts.listcathosts.list|sort|uniqhosts.uniqrm-fhosts.mpiforiincathosts.uniq;doforjinseq1$M;doecho$ihosts.mpidonedone#指定AMD_small 队列#总计 32 核#每节点 12 核,独占计算节点#m 和 k 见上m*k=NP=32一般k=NP_PER_NODENP=m*k#产生 hostfile 文件注意每个节点 MPI 进程数

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报