2018年5月31日 星期四

Static GROMACS-4.6.7 with ORCA

編譯static GROMACS-4.6.7 in double precision with ORCA
  • CMAKE version 3.10.2
  • GCC 6.4.0
首先下載原始碼與測試檔案
  • wget ftp://ftp.gromacs.org/pub/gromacs/gromacs-4.6.7.tar.gz
  • md5sum gromacs-4.6.7.tar.gz
    6d7f7113a39a9dbd91afec2237188d91  
  • wget http://gerrit.gromacs.org/download/regressiontests-4.6.7.tar.gz
  • md5sum regressiontests-4.6.7.tar.gz
    90c8ab2e538fa09aeb8210880913bbf3
接著用下面的方式編譯

export PATH=/pkg1/local/gcc-6.4.0/bin:$PATH
export LD_LIBRARY_PATH=/pkg1/local/gcc-6.4.0/lib:/pkg1/local/lib
export LDFLAGS="-static-libgcc -static-libstdc++"
export CFLAGS=-static 
export CXXFLAGS=-static
tar zxf ~/Sources/gromacs-4.6.7.tar.gz && cd cd gromacs-4.6.7
mkdir build && cd build

/pkg1/chem/GROMACS/cmake-3.10.2-Linux-x86_64/bin/cmake .. \
-DCMAKE_INSTALL_PREFIX=/pkg1/chem/GROMACS/4.6.7-double-gcc640-ORCA \
-DCMAKE_C_COMPILER=/pkg1/local/gcc-6.4.0/bin/gcc \
-DCMAKE_CXX_COMPILER=/pkg1/local/gcc-6.4.0/bin/g++ \
-DGMX_BUILD_OWN_FFTW=ON \
-DGMX_GPU=OFF \
-DGMX_CPU_ACCELERATION=SSE4.1 \
-DGMX_DOUBLE=ON \
-DGMX_DEFAULT_SUFFIX=OFF \
-DBUILD_SHARED_LIBS=OFF \
-DGMX_PREFER_STATIC_LIBS=ON \
-DCMAKE_SKIP_RPATH=ON \
-DREGRESSIONTEST_DOWNLOAD=OFF \
-DGMX_QMMM_PROGRAM=ORCA
這邊與2018.1版本的編譯方式有下面兩個地方不同
  1. 4.6.7版本沒有-DGMX_BUILD_SHARED_EXE
  2. 4.6.7版本沒有-DGMX_SIMD
    而是要改成-DGMX_CPU_ACCELERATION=SSE4.1
編譯環境設定好後,用下面指令編譯並安裝
make -j 24 >& make.log &
make install
程式會安裝在/pkg1/chem/GROMACS/4.6.7-double-gcc640-ORCA
整個安裝的大小是683MB。

測試安裝程式有沒有問題指令如下:
tar zxf ~/Sources/regressiontests-4.6.7.tar.gz && cd regressiontests-4.6.7
source /pkg1/chem/GROMACS/4.6.7-double-gcc640-ORCA/bin/GMXRC

./gmxtest.pl -nosuffix -double -nt 1 all >& gmxtest.log &
cat gmxtest.log | grep PASS | grep -v ^PASSED
cat gmxtest.log | grep -i FAIL -c
注意這邊gmxtest測試的是double precision版本,參數-nt 1則是強迫只用一個核心跑,避免多核心的使用有可能會出現domain decomposition沒切好而導致測試失敗

_EOF_

沒有留言:

張貼留言