Environment Installation
Warning This is an outdated guide.
环境安装方式 + 目录树位置
安装目录树结构
|- /opt/
|- openmpi/
|- 4.0
|- 3.1
|- ...
|- mpich/
|- intel/ # Intel 全家福
|- blas/
|- gcc/
|- cuda/ # Nvidia CUDA
|- pgi/ # CUDA PGi Edition
|- netcdf/
|- netcdf-c/
|- netcdf-fort/
|- pnetcdf
编译安装基本六连:
$ wget [SOURCE_URL]
$ tar zxvf openmpi-4.0.0.tar.gz
$ cd openmpi-4.0.0/
$ ./configure --prefix=‘/opt/mpi/openmpi/4.0’ # 注意规划好位置
$ make -j8
$ make install
包管理系统
spack Environment Modules 二选一,
spack
基本上就是对系统级的modules
的高层API,从ASC20开始,我们开始使用spack
。为保证目录树nfs共享结构,把spack
放在/opt 目录下。
$ git clone https://github.com/spack/spack.git $ cd spack/bin $ ./spack install libelf # test $ echo "export PATH=$PATH:/opt/spack/bin" >> ~/.bashrc $ echo ". /opt/spack/share/spack/setup-env.sh" >> ~/.bashrc $ bash
依赖以及版本spec
$ spack install intel^gcc@9
在测试时使用
$ spack load intel^gcc@9 也可以
module avail
后查看需要load 的环境module load intel
添加新的编译器,在自己编译安装好一个编译器并在PATH
中可以找到的时候,可以使用spack find
命令,之后就可以用这个编译器@intel
来编译新的编译器了。
特殊注意,在编译安装mpi
,omp
过程中一定要开启 --with-rdma 选项以支持Infiniband.
编译器
- gcc (包含 gfortran) - Version 7.4 + 5.5 + 4.9.4 + 4.4.7
CentOS
自带的gcc版本过老,可以使用scl enable devtoolset-9 bash
以支持最新gcc特性。- 7.4:gcc-7.4.0.tar.gz
- 5.5:gcc-5.5.0.tar.gz
- 4.4.7:gcc-4.4.7.tar.gz
- icc & ifort:包含于 Intel Parallel Studio XE 中
Intel Parallel Studio XE 全家桶
Parallel Studio XE:按照 This Procedure 获取和安装,19-20 授权如下
- 序列号 S4ZD-MMZJXJ96 (若失效,可以前往英特尔官网申请,在下方register center,若为spack 安装只需在安装过程中输入即可)
- URL:parallel_studio_xe_2019_update2_cluster_edition.tgz
- LICENSE:官网 Registration Center 下载后传至 Server
icc
ifort
mkl
IntelMPI
均包含于 Parallel Studio XE 中spack install intel
由于cuda只支持编译它的编译器头文件在gcc-7标准以前,所以建议使用intel@18.0.3
MPI
- OpenMPI - Version 4.0 + 3.1 + 3.0 + 2.1
- MPICH - Version 3.3 + 3.2.1
- 3.3:mpich-3.3.tar.gz
- 3.2.1:mpich-3.2.1.tar.gz
- IntelMPI:包含于 Intel Parallel Studio XE 中
Nvidia CUDA
- CUDA Toolkit:
spack install cuda@10.2
以支持不同版本。 - PGi Edition:
spack install pgi@19.10
Math Libraries
- MKL:包含于 Intel Parallel Studio XE 中
- OpenBLAS:
spack install openblas
NetCDF I/O
用于ASC19 的IO500题目中。