软件环境
# 软件环境
用户可以使用传统的如export
命令方式修改环境变量,或者使用module
工具修改环境变量。
- 使用
export
方式修改环境变量可以参考:如何设置环境变量 (opens new window) - 使用
module
方式修改环境变量可以参考:module命令使用教学 (opens new window)
如果希望在计算节点使用Modules环境,或者在提交任务的脚本里面使用Modules环境,请在提交任务脚本中写入:
#!/bin/bash
LUSTRE=`echo $HOME | awk -F / '{print $2}'`
source $LUSTRE/software/modules/bashrc
2
3
# 编译器
系统部署了包括Intel、GCC、PGI在内的常用编译器版本,详见下表:
编译器 | 版本 | 加载命令 |
---|---|---|
Intel | 11.1 | module add Intel_compiler/11.1 |
Intel | 13.0 | module add Intel_compiler/13.0 |
GCC | 4.4.7 | 登录后即可使用 |
GCC | 4.6.1 | GCC/4.6.1 |
GCC | 4.8.5 | GCC/4.8.5 |
GCC | 4.9.4 | GCC/4.9.4 |
GCC | 6.4.0 | GCC/6.4.0 |
GCC | 7.5.0 | GCC/7.5.0 |
PGI | Community Edition Version 19.10 | module add PGI/19.10 |
Intel编译器高版本
- intel 2015 : 登录
ln2
节点, 执行source /opt/intel2015/bin/compilervars.sh intel64
- intel 2016 : 登录
ln8
节点, 执行source /opt/intel-2016/bin/compilervars.sh intel64
- intel 2017 : 登录任意登录节点, 执行
source /vol6/software/intel2017.4/bin/compilervars.sh intel64
其他文件系统用户,可以将vol6
改为对应文件系统名
注意
用户在计算结点上提交作业运行时,如需要调用 Intel 编译器的动态库和MKL,需要添加对应版的库环境。例如(以用户所在文件系统为 vol6 为例):
export LD_LIBRARY_PATH=/vol6/intel2016_lib:/vol6/lib:$LD_LIBRARY_PATH
# MPI编译环境
由于 TH-1A 系统包括三种种基本编译环境,Intel 编译器、 GCC 编译器 和 PGI 编译器,因此为了适应用户需要,系统的 MPI 编译环境包括三部分,即底层分别用相应编译器编译的 MPI 版本。
由于 TH-1A 采用了自主互连的高速网络,因此底层 MPI 为自主实现,使用天河系统提供的 MPI 进行并行编译可以充分发挥天河高速网的性能,提高并行效率,推荐用户使用基于 Intel 编译器编译的 MPI。
调用的后端编译器 | 加载命令 |
---|---|
Intel 2011 | module add Intel_compiler/11.1 MPI/mpich/intel2011 |
Intel 2013 | module add Intel_compiler/13.0 MPI/mpich/intel2013 |
Intel 2015(only ln2) | source /opt/intel2015/bin/compilervars.sh intel64 export PATH=/usr/local/mpi-intel2015/bin:$PATH export LD_LIBRARY_PATH=/usr/local/mpi-intel2015/lib:$LD_LIBRARY_PATH |
Intel 2016(only ln8) | msource /opt/intel-2016/bin/compilervars.sh intel64 export PATH=/usr/local/mpi-intel2016/bin:$PATH export LD_LIBRARY_PATH=/usr/local/mpi-intel2016/lib:$LD_LIBRARY_PATH |
Intel 2017 | source /vol6/software/intel2017.4/bin/compilervars.sh intel64 export PATH=/vol6/software/mpi/mpi-intel2017/bin:$PATH export LD_LIBRARY_PATH=/vol6/software/mpi/mpi-intel2017/lib:$LD_LIBRARY_PATH |
GCC 4.4.7 | module add MPI/mpich/gcc4.4.7 |
GCC 4.6.1 | module add GCC/4.6.1 MPI/mpich/gcc4.6.1 |
GCC 4.8.5 | module add GCC/4.8.5 MPI/mpich/gcc4.8.5 |
GCC 4.9.4 | module add GCC/4.9.4 MPI/mpich/gcc4.9.4 |
GCC 6.4.0 | module add GCC/6.4.0 MPI/mpich/gcc6.4.0 |
GCC 7.5.0 | module add GCC/7.5.0 MPI/mpich/gcc7.5.0 |
PGI 19.0 | module add PGI/19.10 MPI/mpich/pgi19.10 |
MPI编译环境使用注意事项
TH-1A 系统具备自主高速互联网络,并提供 MPI 编程环境,如用必须使用其他版本 MPI,比如 OpenMPI 等,也可以自己安装并部署。用该 MPI 编译的程 序,同样可以利用高速互联网络的虚拟以太网运算任务,但性能会较 TH-1A 自主MPI 低很多。
MPI 编译命令内部会自动包含 MPI 标准头文件所在的路径,并自动连接所需的 MPI 通信接口库,所以不需要用户在命令行参数中指定。
如果用户使用 makefile 或 autoconf 编译 MPI 并行程序,还可以将 makefile 中 的 CC,CXX,F77,F90 等变量设置成 mpicc,mpicxx,mpif77,mpif90,或在 autoconf 的 configure 过程前设置 CC,CXX,F77 和 F90 等环境变量为 mpicc,mpicxx,mpif77 和 mpif90。
# CUDA环境
表 CUDA 编译环境(以用户所在文件系统为 vol6
为例)
CUDA 版本 | CUDA 路径 | SDK 路径 |
---|---|---|
3.0 | /vol6/software/cuda/cuda-3.0 | /vol6/software/cuda/sdk-3.0 |
3.1 | /vol6/software/cuda/cuda-3.1 | /vol6/software/cuda/sdk-3.1 |
3.2 | /vol6/software/cuda/cuda-3.2 | /vol6/software/cuda/sdk-3.2 |
4.0 | /vol6/software/cuda/cuda-4.0 | /vol6/software/cuda/sdk-4.0 |
4.1 | /vol6/software/cuda/cuda-4.1 | /vol6/software/cuda/sdk-4.1 |
4.2 | /vol6/software/cuda/cuda-4.2 | /vol6/software/cuda/sdk-4.2 |
5.0 | /vol6/software/cuda/cuda-5.0 | /vol6/software/cuda/sdk-5.0 |
7.5 | /vol6/software/cuda/cuda-7.5 | /vol6/software/cuda/sdk-7.5 |
由于计算结点包括一个 M2050 GPU,因此在登陆结点有相应的 CUDA 编译环境。
CUDA 编译环境包含三个部分,编译器、SDK 和设备驱动,目前计算结点CUDA 编译环境和设备驱动,均已经更新至 CUDA 7.5,用户可以选择相应的编译 器,对应的 CUDA 环境见上表。在 vol-th、WORK、THL4 的 software 目录下的 cuda 目录里面,都有相同的CUDA 编译环境。
用户使用 CUDA 进行程序编译时需添加如下环境变量声明:(以 CUDA7.5 为例)
# export 方式
export PATH=/vol6/software/cuda/cuda-7.5/bin:$PATH
export LD_LIBRARY_PATH=/vol6/software/cuda/cuda-7.5/lib64:$LD_LIBRARY_PATH
# module 方式
module add CUDA/7.5
2
3
4
5
6
注意:目前结点的 CUDA 版本已经升级至 7.5,请大家在编译运行 GPU 程序时,选择使用自己需要的 CUDA 版本就行编译和运行,以及相应的动态链接库。
# 其他环境
# Python环境
使用module方式加载即可:
module add python/2.5.5
module add python/2.7.2
module add python/2.7.11
module add python/2.7_anaconda
module add python/3.6_anaconda
module add python/3.7_anaconda
2
3
4
5
6
::: pip安装扩展包 tip
用户可以通过加载 proxy
模块,实现 pip
命令联网安装扩展包,注意添加 --user
参数。
:::
# 软件环境
# 应用软件
- abacus
- abinit
- athena++
- autodock
- beast
- berkeleyGW
- bigdft
- blast
- bowtie
- bowtie2
- calypso_analysis_kit
- compliance
- cp2k
- cpmd
- dftbplus
- dock
- espresso
- gibbs2
- grads
- gromacs
- lammps
- magma
- mdanalysis
- namd
- nwchem
- phono3py
- phonopy
- plumed
- qmcpack
- rdkit
- roms
- samtools
- shengbte
- siesta
- spparks
- thirdorder
- trinity
- vaspkit
- velvet
- vmd
- vtstscripts
- wannier90
- wannier_tools
- wgrib
- wgrib2
- wps
- wrf
- wrfda
- xcrysden
- xhmm
- yambo
提示
- 以上仅列出了部分在系统上已安装的软件,用户可通过设置环境变量直接使用。用户如有其他软件的移植、安装、兼容性测试,可直接联系相关工作人员。
- 各类商业软件(如 VASP、Material Studio、Gaussian)均可正常在我中心高性能计算平台上使用,但由于中心尚未购买对应软件版权,用户若使用这类商业软件,需提前购买版权获取使用许可,并仅限于该用户自己使用,且用户须对合法性负责,中心技术人员可协助完成软件的部署和测试。
# 基础库
- atk
- atkmm
- blas
- boost
- cernlib
- elpa
- expat
- fftw
- fontconfig
- freetype
- gdbm
- gdk-pixbuf
- glib
- glibmm
- gmm
- gmp
- gsl
- gtk+
- gtkglext
- gtkglextmm
- gtkmm
- harfbuzz
- icu4c
- lapack
- libelf
- libffi
- libunwind
- libXft
- libxml2
- libXrender
- lzma
- mkl
- mpc
- mpfr
- pango
- pangomm
- pangox-compat
- pcre
- petsc
- sigc
- spglib
- szip
- xcb-proto
- xz
- zlib
# 图像库环境
- cairo
- cairomm
- gnuplot
- grace
- jasper
- libjpeg
- libpng
- pixman
- tiff
# I/O库
- cdo
- hdf5
- ncl
- nco
- ncview
- netcdf
- pnetcdf
- udunits
# 性能分析工具
- collectl
- darshan
- hpctoolkit
- mpip
- nload
- padb
# 其他工具
- autoconf
- basilisk
- bison
- cmake
- curl
- fault
- gperftools
- idl
- iftop
- imake
- launcher
- loginnode
- m4
- make
- makedepend
- p7zip
- perl
- python
- R
- rar
- test
- texinfo
- tmux
- valgrind
- which
增加(以vol6系统为例)
用户可以在 /vol6/softare 目录下寻找部署好的软件,或者输入 module av
命令查询软件。如果需要新增,可以联系我 https://mrzhenggang.com/about