售前咨询电话

021-61872201

客服电话

021-80166080*834

有问题直接回复客服

微信扫码

注册 登录
产品
支持
帮助与文档
高性能集群计算 > 命令行操作手册 > 昆仑集群命令行操作说明
昆仑集群命令行操作说明
1. 硬件环境
1.1 计算节点配置
昆仑集群每台计算节点配备:
    · 1颗x86 CPU处理器,主频2.5 GHz,32核
    · 128 GB DDR4内存,主频2666 MHz
    · 4块DCU加速卡
1.2 存储系统
集群配备两套高速存储系统,均采用曙光ParaStor300S并行文件系统。该套存储挂载在每台节点上的/public目录下。
1.3 网络系统
集群采用全线速、无阻塞的Infiniband HDR专用计算网络,传输带宽为200 Gb/s。能够极大地提升计算的速度和扩展性。
2. 软件环境
2.1 系统软件
集群计算和登录节点安装的操作系统为:CentOS Linux release 7.6(64位)。
集群采用的作业管理系统为:SLURM。
2.2 编译环境
集群系统安装了多种编译环境及应用,主要包括:编译器、调试器、mpi并行开发环境和数学库等四部分。
用户账号在创建时默认已加载了gcc-7.3、rocm-2.9、hpcx-2.4.1(gcc-7.3.1)。用户可以通过修改$HOME/.bashrc文件,来调整默认加载的软件环境。
为方便使用,集群支持通过module工具管理环境变量,可使用module命令设置、查看所需的环境。例如可在bashrc中设置:
通过module purge取消已默认加载的环境。使用module load compiler/intel/2017.5.239加载intel-2017编译器的环境。使用module load mpi/hpcx/2.4.1/intel-2017.5.239加载hpcx mpi并行库的环境。
2.2.1 编译器
系统提供多种适用于x86处理器和DCU加速卡的编译器,安装版本及安装路径如下:
分类 软件名称 版本 安装路径
CPU C/Fortran编译器 gcc/g++ 7.3.1 /opt/rh/devtoolset-7/
gfortran 7.3.1 /opt/rh/devtoolset-7/
加速卡编译器 HIP编译器hipcc 2.8.19361 /opt/rocm/hip/
hcc编译器hcc 2.8.19361 /opt/rocm/hcc/
opencl编译器hcc 2.8.19361 /opt/rocm/hcc/
2.2.2 MPI并行库
分类 软件名称 版本 安装路径
MPI hpcx-2.4.1 2.4.1 /opt/hpc/software/mpi/hpcx/v2.4.1/
2.2.3 数学库
系统提供多种 CPU 数学库、加速卡数学库及深度学习库, 安装版本及路径如下:
分类 软件名称 简介 安装路径
CPU数学库 hygonBlis CPU BLAS 库 /opt/hpc/software/mathlib/blas/hygon/0831/
fftw CPU FFTW 库 /opt/hpc/software/mathlib/fftw/3.3.8/
hdf5 hdf5 /opt/hpc/software/mathlib/hdf5/1.8.20/
jasper jasper /opt/hpc/software/mathlib/jasper/1.900.1/
libpng libpng /opt/hpc/software/mathlib/libpng/1.2.50/
netcdf netcdf /opt/hpc/software/mathlib/netcdf/4.4.1/
zlib zlib /opt/hpc/software/mathlib/zlib/1.2.8/
DCU数学库 rocblas 加速卡BLAS库 /opt/rocm/rocblas
rocfft 加速卡FFT库 /opt/rocm/rocfft/
rocsparse rocsparse /opt/rocm/rocsparse/
rocrand rocrand /opt/rocm/rocrand/
hipcub hipcub /opt/rocm/hipcub/
深度学习库 miopen miopen /opt/rocm/miopen/
opencl库 opencl opencl /opt/rocm/opencl/
2.2.4 查看系统可用软件
可以使用如下命令,查看可用的软件:
上述命令会列出用户可使用的所有软件名称。系统安装的软件主要分为两类:
1)安装在共享存储/opt/hpc/software/路径下的软件,包含编译器、数学库、MPI 并行库等。
2)安装在/public/software/apps下的常用的应用程序。
2.2.5 加载/卸载软件环境
要加载某个软件的环境,只需要使用module load命令加载相应模块即可。例如,要加载Intel编译器编译的hdf5函数库(1.8.20版本),使用命令:
					$ module load mathlib/hdf5/1.8.20/intel
				
查看已经加载上的软件环境,使用命令:
					$ module list
				
卸载不需要的软件环境,使用命令:
					$ module rm mathlib/hdf5/1.8.20/intel
				
3. 集群登录
请使用我们自主研发的HPCPlus平台登录集群,强烈推荐使用Chrome浏览器。
3.1 HPCPlus平台注册
请使用chrome浏览器登录网址:https://hpcplus.net/,在页面右上角点击“注册”按钮,打开如下注册页面:
首先填入您常用的手机号码,随后在下方拖动“带有箭头的滑块”,填充拼图。输入收到的手机短信验证码。设置“登录密码”和“用户名”。点击“立即注册”。
请务必妥善保管平台用户名、登录密码以及收到的短信验证码,以防范账号安全风险。
3.2 HPCPlus平台登录
请使用chrome浏览器登录平台,在浏览器中输入如下网址:
可将该网址保存为书签。
根据界面提示输入已经注册好的平台用户名和密码,点击“登录”按钮。
登录成功以后,会显示类似下图中的界面:
图片最上方是功能菜单,包含“工作台”,“产品”,“支持”,“消息”和“账号管理”等项目。
下方为“我的项目与资源”栏。其中每个图标均代表一个可用的“项目组”或“资源”,项目组的名称为对应集群主机账号名。在HPCPlus平台中项目组是用户使用和管理计算资源的入口,点击项目组图标,即可进入计算资源使用界面。
3.3 项目组管理
资源除了可供“项目组管理员”的平台账号使用,还可以授权给课题组其他人员注册的平台账号使用,这通过“添加项目组成员”的功能实现:
点击对应的项目组图标==》在打开的页面上点击“项目组管理”==》点击右上方的“编辑”按钮==》在编辑界面上点击“添加成员,最终会出现如下界面:
在文本框中输入要添加的成员注册的平台用户名,或者注册用户名时使用的手机号码;然后点击“搜索”按钮,在搜索到的用户名右侧点击“添加”,即可将该成员加入到项目组。
添加成功后,相关成员登录自己的平台账号,即可在“我的项目与资源”一栏看到对应的项目组。
3.4 平台使用
点击特定项目组图标,会进入到计算资源的使用界面,如下图所示:
首先默认的界面是项目组概览,包含作业概览:异常作业、已完成作业、计算中作业和排队作业数量。以及项目组资源使用情况:包含当前可用计算机时和可用存储空间,点击“查看使用明细”,在弹出的页面上可以查看指定时间段内的作业详情,点击“导出明细”可以将相关时段的机时数据和作业情况导出到excel表格。
3.4.1 命令行使用
在资源使用页面的左侧显示功能列表,如下图所示:
点击“网页版命令行”会弹出一个网页版本的命令行,名为“terminal-1”,点击右侧的按钮可开启多个命令行界面,默认会登录到集群的登录节点。
或者可以点击“终端版命令行”,出现如下页面:
点击“打开登录节点命令行”会开启putty客户端程序,并自动SSH连接到集群的登录节点。首次连接请点击“下载安装”,先安装一下客户端程序。
3.4.2 数据上传下载
点击“数据管理”。进入数据管理页面:
可在该页面上进行小文件的上传下载操作。
大文件上传和下载强烈建议使用Filezilla客户端:点击右上方的图标,会弹出Filezilla FTP客户端。初次使用,可能会提醒您下载和安装客户端软件:
请根据提示下载客户端程序,并进行安装。
3.4.3 平台使用注意事项
网页命令行界面下的复制、黏贴操作通过“ctrl c” + “ctrl v”来进行,或者双击左键选中,单机右键粘贴。
如长时间无操作,命令行界面将挂起退出,此时需重新开启新命令行。
4. 作业提交和管理
集群上集成了作业管理系统,该系统基于Slurm进行了深度定制开发。所有作业均需要通过Slurm系统进行提交、管理、监控和删除。
注意:
(1) 不要在登录节点上不通过作业调度管理系统直接运行作业(编译等日常操作除外),以免影响其余用户的正常使用。
(2)不通过作业调度管理系统直接在计算节点上运行的作业,将会被杀掉。
4.1分区信息查询-sinfo
用户在使用时,首先需要了解哪些分区(或队列)可以使用。可使用sinfo命令查询队列信息。根据命令输出,可以看到当前各个队列情况,并可看到每个分区可访问的空闲节点数量、节点名称。
在sinfo命令的默认输出中:PARTITION表示分区名称、NODES表示节点数、STATE表示节点运行状态、NODELIST表示节点列表。
其中STATE一列中:idle表示节点处于空闲状态,可接收新的作业;allocated表示节点已经分配了一个或者多个作业且所有核心用满,在作业释放前不能再被分配作业;mix状态表示节点的部分核心被占用,仍可以被分配作业;drain状态表示对应节点已经下线;drng表示已下线但仍有作业在运行。
4.2 交互方式提交作业
4.2.1 srun
交互式提交作业:在命令行窗口中执行srun命令,主要命令格式如下:
					srun [options] program
				
4.2.2 使用示例
1)在分区normal上指定任务数运行hostname,如下图所示:
2)在分区normal上指定节点运行hostname,如下图所示:
3)在分区normal上指定节点数2,任务数6,独占运行hostname,如下图所示:
4.3 批处理方式提交作业(推荐)
强烈推荐使用sbatch命令+作业提交脚本的方式提交作业。使用sbatch命令提交作业,其基本格式为:sbatch < xxx.sbatch。其中xxx.sbatch为作业脚本文件。
在作业脚本文件中,脚本第一行以“ #!”字符开头,用于指定脚本文件的解释程序,如:#!/bin/bash。接下来各行是Slurm作业调度系统参数,以#SBATCH开头,用于设定作业名,指定队列,设置节点数等等。最后是作业运行的程序命令。
用户可使用sbatch命令提交用户作业脚本。示例如下:
4.3.1 串行作业脚本示例
					#!/bin/bash
					#SBATCH -J TestSerial
					#SBATCH -p ssct
					#SBATCH -N 1
					#SBATCH -n 1

					echo “SLURM_JOB_PARTITION=$SLURM_JOB_PARTITION”
					echo “SLURM_JOB_NODELIST=$SLURM_JOB_NODELIST”

					srun ./calc_serial 1000000
				
4.3.2 MPI作业脚本示例
					#!/bin/bash
					#SBATCH -J MPI
					#SBATCH -p ssct
					#SBATCH -N 2
					#SBATCH --tasks-per-node=32

					module load compiler/devtoolset/7.3.1
					module load compiler/rocm/2.9
					module load mpi/hpcx/2.4.1/gcc-7.3.1

					srun --mpi=pmix_v3 $HOME/mpi_program

				
4.4 作业信息查询-squeue
用户可使用squeue命令查看作业信息,如:
其中JOBID表示任务ID编号,PARTITION表示作业所在队列(分区),NAME表示任务名称,USER为用户,ST为作业状态,TIME为已运行时间,NODES表示占用节点数,NODELIST(REASON)为任务运行的节点列表或者原因说明。
状态列中R-Runing(正在运行),PD-PenDing(排队中),CG-COMPLETING(正在完成中),CA-CANCELLED(被人为取消),CD-COMPLETED(作业运行完成),F-FAILED作业运行失败,NF-NODE_FAIL节点问题导致作业运行失败,PR作业被抢占,S作业被挂起,TO作业超时被杀。
4.5 作业删除-scancel
作业删除命令:scancel “作业号”,例如:
普通用户只能查看、删除自己提交的作业。
免费试用,零门槛体验高性能计算魅力
免费体验
首页 Copyright © 2016-2020 上海超算科技有限公司 沪ICP备16034967号-5