Here is a write-up of my computing platform and applications:
- NWChem 6.6 (Oct 2015)
- Intel Compilers 2015 XE (version 15.0.6)
- Intel MPI (5.0.3)
- Intel MKL (11.2.4)
- Infiniband Inteconnect (OFED 1.5.3)
- CentOS 6.3 (x86_64)
Step 1: First thing first, source the intel components setting from
source /usr/local/intel_2015/parallel_studio_xe_2015/bin/psxevars.sh intel64 source /usr/local/intel_2015/impi/5.0.3.049/bin64/mpivars.sh intel64 source /usr/local/intel_2015/composerxe/bin/compilervars.sh intel64 source /usr/local/intel_2015/mkl/bin/mklvars.sh intel64
Step 2: Assuming you are done, you may want to download the NWChem 6.6 from NWChem Website. You may also want to take a look at instruction set for Compiling NWChem.
I have less problem running NWCHEM when the installation and the compiling directories are the same. If you recompile, do untar from source. Somehow the “make clean” does not clean the directories properly.
# tar -zxvf Nwchem-6.6.revision27746-src.2015-10-20.tar.gz # cd nwchem-6.6
Step 3: Apply All the Patches for the 27746 revision of NWChem 6.6
cd $NWCHEM_TOP wget http://www.nwchem-sw.org/download.php?f=Xccvs98.patch.gz gzip -d Xccvs98.patch.gz patch -p0 < Xccvs98.patch
Here is my nwchem_script_Feb2017.sh. For more details information, see Compiling NWChem for details on some of the parameters
export TCGRSH=/usr/bin/ssh export NWCHEM_TOP=/home/melvin/Downloads/nwchem-6.6 export NWCHEM_TARGET=LINUX64 export NWCHEM_MODULES=all export LARGE_FILES=TRUE export ARMCI_NETWORK=OPENIB export IB_INCLUDE=/usr/include export IB_LIB=/usr/lib64 export IB_LIB_NAME="-libumad -libverbs -lpthread" export MSG_COMMS=MPI export USE_MPI=y export USE_MPIF=y export USE_MPIF4=y export MPI_LOC=/usr/local/RH6_apps/intel_2015/impi_5.0.3/intel64 export MPI_LIB=$MPI_LOC/lib export MPI_INCLUDE=$MPI_LOC/include export LIBMPI="-lmpigf -lmpigi -lmpi_ilp64 -lmpi" export FC=ifort export CC=icc export MKLLIB=/usr/local/RH6_apps/intel_2015/mkl/lib/intel64 export MKLINC=/usr/local/RH6_apps/intel_2015/mkl/include export PYTHONHOME=/usr export PYTHONVERSION=2.6 export USE_PYTHON64=y export PYTHONLIBTYPE=so sed -i 's/libpython$(PYTHONVERSION).a/libpython$(PYTHONVERSION).$(PYTHONLIBTYPE)/g' config/makefile.h export HAS_BLAS=yes export BLAS_SIZE=8 export BLASOPT="-L$MKLLIB -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lpthread -lm" export LAPACK_LIBS="-L$MKLLIB -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lpthread -lm" export SCALAPACK_SIZE=8 export SCALAPACK="-L$MKLLIB -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lmkl_blacs_intelmpi_ilp64 -lpthread -lm" export USE_64TO32=y echo "cd $NWCHEM_TOP/src" cd $NWCHEM_TOP/src echo "BEGIN --- make realclean " make realclean echo "END --- make realclean " echo "BEGIN --- make nwchem_config " make nwchem_config echo "END --- make nwchem_config " echo "BEGIN --- make" make CC=icc FC=ifort FOPTIMIZE=-O3 -j4 echo "END --- make " cd $NWCHEM_TOP/src/util make CC=icc FC=ifort FOPTIMIZE=-O3 version make CC=icc FC=ifort FOPTIMIZE=-O3 cd $NWCHEM_TOP/src make CC=icc FC=ifort FOPTIMIZE=-O3 link
General Site Installation
Determine the local storage path for the install files. (e.g., /usr/local/NWChem).
Make directories
# mkdir /usr/local/nwchem-6.6 # mkdir /usr/local/nwchem-6.6/bin # mkdir /usr/local/nwchem-6.6/data
Copy binary
# cp $NWCHEM_TOP/bin/ /usr/local/nwchem-6.6/bin # cd /usr/local/nwchem-6.6/bin # chmod 755 nwchem
Copy libraries
# cd $NWCHEM_TOP/src/basis # cp -r libraries /usr/local/nwchem-6.6/data # cd $NWCHEM_TOP/src/ # cp -r data /usr/local/nwchem-6.6 # cd $NWCHEM_TOP/src/nwpw # cp -r libraryps /usr/local/nwchem-6.6/data
The Final Lap (From Compiling NWChem)
Each user will need a .nwchemrc file to point to these default data files. A global one could be put in /usr/local/nwchem-6.6/data and a symbolic link made in each users $HOME directory is probably the best plan for new installs. Users would have to issue the following command prior to using NWChem: ln -s /usr/local/nwchem-6.6/data/default.nwchemrc $HOME/.nwchemrc
Contents of the default.nwchemrc file based on the above information should be:
nwchem_basis_library /usr/local/nwchem-6.6/data/libraries/ nwchem_nwpw_library /usr/local/nwchem-6.6/data/libraryps/ ffield amber amber_1 /usr/local/nwchem-6.6/data/amber_s/ amber_2 /usr/local/nwchem-6.6/data/amber_q/ amber_3 /usr/local/nwchem-6.6/data/amber_x/ amber_4 /usr/local/nwchem-6.6/data/amber_u/ spce /usr/local/nwchem-6.6/data/solvents/spce.rst charmm_s /usr/local/nwchem-6.6/data/charmm_s/ charmm_x /usr/local/nwchem-6.6/data/charmm_x/
References:
Hello kittycool,
I found your guide very useful during my first attempt to compile NWChem. May I suggest you to have a look to the following page?
http://www.nwchem-sw.org/index.php/Special:AWCforum/st/id2370/Compile_NWChem_with_Intel_2017_%28….html
In there, I’m reporting the setting that I used to successfully compile this code using Intel 2017 (MPI & OpenMP + MKL). I hope this could help many other people to have an awesome experience while using this software.
Have you a nice day!!!!
LikeLike