在集群中使用虚拟化技术

五、singularity之MPI--在容器中amber编译(含cuda))和使用容器中的amber MPI(二)

2022-12-06 14:26:16 admin 103

(二)、singularity中使用mpi--amber,自己编译amber(含cuda)

1、在login06上执行

singularitybuild  --sandbox centos7.6_bjxenv_0    docker://bjxdockerfast:5000/centos7.6_bjxenv_0 

其他登陆节点:

singularitybuild  --sandbox centos7.6_bjxenv_0    docker://bjxdocker:5000/centos7.6_bjxenv_0 

或者singularitybuild  --nv --sandbox ambermd  docker://centos:7.6.1810

--nv这个是gpu环境 nvidia的cpu,这个部分可以不挂

2、创建文件夹appsnew

mkdir ambermd/appsnew

3、复制amber18文件夹

cp -r /gpfs1/share/singularity/amber18/ ambermd/

4、进入虚拟系统

singularityshell --fakeroot --nv -B /appsnew/:/appsnew/ -w ambermd

5、安装必要的环境

Apptainer>yum install gcc g++  gcc-gfortran.x86_64 which tcsh libstdc++-static gcc-c++ flex bison make zlib-devel  epel-release  bzip2-devel man-db

Apptainer>source /appsnew/source/intel2019.sh

Apptainer>source /appsnew/source/cuda-10.1.sh

6、编译安装

Apptainer>cd amber18

1} 编译工具

Apptainer>./configure -noX11  intel

Apptainer>make && make install

2} 编译mpi--非cuda版本的

Apptainer>./configure -intelmpi -noX11  intel

Apptainer>make && make install

3} 编译cuda版本的

Apptainer>./configure -intelmpi -noX11 -cuda intel

Apptainer>make && make install

7、加入环境

Apptainer>vi ambermd/environment  ##加入 

source /appsnew/source/intel2019.sh  

source /appsnew/source/cuda-10.1.sh

8、退出系统

Apptainer>exit

9、复制测试文件(前面已做,这步可以忽略)

cp -rf /gpfs1/share/singularity/md9gpu/ .

10、进入文件夹

cd md9gpu

11、测试脚本,在登陆或者debug节点,运行1分钟按ctrl+c 取消

mpirun -n 2 singularityrun  -B /appsnew ../ambermd   pmemd.MPI -O -i md.in  -o md1.out -p 1tcew.prmtop -c den.rst -r md1.rst -x md1.mdcrd

12、创建脚本文件:

[gao_pkuhpc@login06 md9gpu]$ cat job-mycns.srp

#!/bin/bash

#SBATCH -J sle232452

#SBATCH -p cn-short

#SBATCH -N 2 

#SBATCH -o sle232452_%j.out

#SBATCH -e sle232452_%j.err

#SBATCH --no-requeue

#SBATCH -A gao_g1

#SBATCH --qos=gaocns

#SBATCH --ntasks-per-node=20

source /appsnew/source/intel2019.sh

mpirun -n $SLURM_NTASKS  singularityrun  -B /appsnew ../ambermd   pmemd.MPI -O -i md.in  -o md1.out -p 1tcew.prmtop -c den.rst -r md1.rst -x md1.mdcrd

13、提交脚本:

sbatch  job-mycns.srp

注意:cnnl脚本参考第一节


首页
资源&收费
集群
成果
问答