Amber是一套分子动力学模拟程序,我们今天来说下如何使用云服务器安装部署这套程序。
自己的一个朋友是做科研工作的,不久前他找到我向我咨询一个关于科学计算的需求:
他在做蛋白和药物对接相关的研究,希望使用分子动力学模拟软件Amber (https://ambermd.org/),这款科学计算软件也在材料科学中有着广泛的应用。
这款软件在运算时可以利用GPU加速极大提升计算效率,所以一开始他和我咨询的是关于GPU显卡相关的问题,但聊着聊着发现如果自行购买GPU显卡维护主机有如下问题:
我朋友说有同事使用超算来作为解决方案,单等待时间很长,且使用成本也不低。
上面这些问题,听起来不就是云服务可以解决的经典问题吗?
朋友欣然接受了我的提议,并拜托我帮他部署好整个Amber环境。
这里我记录下使用腾讯云(https://cloud.tencent.com/)部署Amber环境的整个过程。
这里我参考了【玩转腾讯云】GPU云服务器(驱动篇) 这篇文章,成功部署好GPU云服务器环境。但因为我对CentOS更为熟悉,所以操作系统使用的CentOS 7.6版本。
部署机器选择:
这里部署的是Amber18这个版本。
Amber18本身有两个需要安装的包,分别是:
其中AmberTools是免费的,但不提供GPU加速功能,如果想利用GPU加速,就需要额外付费购买Amber18。
我在部署过程中使用root
账号在/root
目录下操作。
yum install -y gcc gcc-gfortran gcc-c++ flex tcsh zlib-devel \
bzip2-devel libXt-devel libXext-devel libXdmcp-devel \
tkinter openmpi openmpi-devel perl perl-ExtUtils-MakeMaker \
patch bison boost-devel
tar zxvf ~/amber_pkgs/mpich-3.3.2.tar.gz
cd mpich-3.3.2/
./configure
make -j8
make install
我这里解压到
tar jxvf amber_pkgs/Amber18.tar.bz2
tar jxvf amber_pkgs/AmberTools18.tar.bz2
yum install -y conda
conda init bash
source ~/.bashrc
conda create -n amber18
conda activate amber18
conda install --file amber18/AmberTools/src/python_requirement.txt
在~/.bashrc中添加:
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA_HOME/lib64
export AMBER_PREFIX=$HOME/amber18
export AMBERHOME=$AMBER_PREFIX
export PATH="${AMBER_PREFIX}/bin:${PATH}"
# Add location of Amber Python modules to default Python search path
if [ -z "$PYTHONPATH" ]; then
export PYTHONPATH="${AMBER_PREFIX}/lib/python3.8/site-packages"
else
export PYTHONPATH="${AMBER_PREFIX}/lib/python3.8/site-packages:${PYTHONPATH}"
fi
if [ -z "${LD_LIBRARY_PATH}" ]; then
export LD_LIBRARY_PATH="${AMBER_PREFIX}/lib"
else
export LD_LIBRARY_PATH="${AMBER_PREFIX}/lib:${LD_LIBRARY_PATH}"
fi
之后source一下:
source ~/.bashrc
cd $AMBERHOME
# 编译gpu并行版本
./configure --with-python /root/.conda/envs/amber18/bin/python -cuda -mpi -noX11 gnu
make -j8 install
export DO_PARALLEL="mpirun -np 8"
make test.cuda_parallel
测试时可以观察gpu的运行状况:
watch -n 10 nvidia-smi
可以看到:
Every 10.0s: nvidia-smi Sun Jun 28 17:18:57 2020
Sun Jun 28 17:18:57 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.33.01 Driver Version: 440.33.01 CUDA Version: 10.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 Tesla T4 On | 00000000:00:08.0 Off | 0 |
| N/A 41C P0 55W / 70W | 1219MiB / 15109MiB | 100% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 16583 C /root/amber18/bin/pmemd.cuda_DPFP.MPI 151MiB |
| 0 16584 C /root/amber18/bin/pmemd.cuda_DPFP.MPI 151MiB |
| 0 16585 C /root/amber18/bin/pmemd.cuda_DPFP.MPI 151MiB |
| 0 16586 C /root/amber18/bin/pmemd.cuda_DPFP.MPI 151MiB |
| 0 16587 C /root/amber18/bin/pmemd.cuda_DPFP.MPI 151MiB |
| 0 16588 C /root/amber18/bin/pmemd.cuda_DPFP.MPI 151MiB |
| 0 16589 C /root/amber18/bin/pmemd.cuda_DPFP.MPI 151MiB |
| 0 16590 C /root/amber18/bin/pmemd.cuda_DPFP.MPI 151MiB |
+-----------------------------------------------------------------------------+
到这里Amber的软件环境我们就部署完成了。
做好环境后,我们可以利用云服务器的镜像制作功能为部署好的软件环境制作自定义镜像,这样做有如下好处:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。