非root更新GCC环境并安装PLUMED+GROMACS

非root更新GCC环境并安装PLUMED+GROMACS

学校超算的操作系统是CentOS-6.6, GCC版本是4.4.7。因为课题需要安装PLUMED2.6.1,而2.6的PLUMED又需要GROMACS-2018.8,又双叒叕需要支持C++11,导致GCC的环境又需要更新。网上没有完整的流程,自己整理了一个。
比较复杂的步骤就解释一下,别的步骤直接看命令应该问题不大

第一步:更新GCC

GCC的更新网上相关的doc有很多,不过有的方法比较繁琐,这里记录一个简单些的。
linux下安装gcc-4.8.1.

1、下载gcc 4.8.1源码包:
gcc-4.8.1.
2、下载GCC的依赖包
gmp-4.3.2.tar.bz2
mpfr-2.4.2.tar.bz2
mpc-0.8.1.tar.gz
这个有兄弟已经打包好了百度网盘.
3、解压并把依赖包放进GCC的目录下,这样就不用一个个编译了:
tar -jxvf gcc-4.8.1.tar.bz2
tar -xjf gmp-4.3.2.tar.bz2
tar -xjf mpfr-2.4.2.tar.bz2
tar -xzf mpc-0.8.1.tar.gz
mv gmp-4.3.2 gcc-4.8.1/gmp
mv mpfr-2.4.2 gcc-4.8.1/mpfr
mv mpc-0.8.1 gcc-4.8.1/mpc
4、新建目录用于存放编译结果:
mkdir gcc-build-4.8.1
5、进入新目录,并执行configure命令,产生makefile:
cd gcc-build-4.8.1

../gcc-4.8.1/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib --prefix=/path/to/gcc-4.8.1

6、编译安装
make -j
make install
7、修改bashrc文件覆盖原有GCC环境:
vim ~/.bashrc
添加文本

export PATH=/path/to/gcc-4.8.1/bin:$PATH
export LD_LIBRARY_PATH=/path/to/gcc-4.8.1/lib:$LD_LIBRARY_PATH

source ~/.bashrc
8、gcc -v 测试一下,或者which gcc/which g++

第二步:更新其他依赖库

BLAS、LAPACK、FFTW、MPI等之前是在CentOS-7的节点编译的,试了一下可以用,这里就不再重装了。但是如果是从零安装的话需要走这一步,装不装运行速度差别很大。

第三步:安装PLUMED

github上下载好PLUMED-2.6.1的安装包,
PLUMED2-2.6.1.
执行以下步骤:
tar -zxvf plumed2-2.6.1.tar.gz
cd plumed2-2.6.1
./configure --prefix=/path/to/plumed2-2.6.1/
make -j
make install
添加环境变量文件:
/usrname/profile.d/apps_plumed2-2.6.1.sh
内容如下:

PLUMED_HOME=/path/to/plumed2-2.6.1
export  PATH=${PLUMED_HOME}/bin:$PATH
export  LD_LIBRARY_PATH=${PLUMED_HOME}/lib:$LD_LIBRARY_PATH
export  INCLUDE=${PLUMED_HOME}/include:$INCLUDE

第四步:更新CMake

学校的操作系统自带的CMake版本是2.8.12.2,但是编译GROMACS-2018.8需要3.4.3以上的版本:
cmake-3.4.3.
下载文件名为cmake-3.4.3.tar.gz的那个,然后执行一下命令:
tar -zxvf cmake-3.4.3.tar.gz
./bootstrap --prefix=/path/to/cmake-3.4.3
make -j
make install
根据需要可以修改环境变量或者用绝对路径调用。

第五步,安装GROMACS-2018.8

下载GROMACS-2018.8的安装包GROMACS-2018.8.
1、解压文件,并进入路径
tar -zxvf gromacs-2018.8.tar.gz
cd gromacs-2018.8
2、打PLUMED补丁
echo 2 | plumed patch -p
选项2即为PLUMED对应版本的补丁,要是别的版本的GROMACS注意更换一下
3、配置、编译、安装(我安装的fftw为3.3.8版本),这里因为混用了一些东西因此通过绝对路径指定的C和C++的编译器路径
mkdir build
cd build/

cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/gromacs-2018.8/ -DFFTWF_LIBRARY=/path/to/fftw-3.3.8/lib/libfftw3f.so -DGMX_MPI=on -DGMX_GPU=on -DBUILD_SHARED_LIBS=OFF -DGMX_PREFER_STATIC_LIBS=ON -DGMX_SIMD=SSE4.1 -DCMAKE_CXX_COMPILER=/path/to/gcc-4.8.1/bin/g++ -DCMAKE_C_COMPILER=/path/to/gcc-4.8.1/bin/gcc

make -j 56
make install
4、修改bashrc文件

GMX_HOME=/path/to/gromacs-2018.8
export  PATH=${GMX_HOME}/bin:$PATH
export  LD_LIBRARY_PATH=${GMX_HOME}/lib64:$LD_LIBRARY_PATH
export  INCLUDE=${GMX_HOME}/include:$INCLUDE

如果不重启记得再source 一下

第六步:测试算例

随便下载个PLUMED的tutorial文件跑一下
gmx_mpi mdrun -v -plumed
如果PLUMED补丁没打上,应该是不支持-plumed这个参数的。如果可以算了那就大功告成辣~

PS:更新GCC、PLUMED(原为2.3.7)、GROMACS(原为5.0.7)版本之后,同一个tutorial的计算速度从700 ns/d变成了4000 ns/d。芜湖,起飞~

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值