Instructions to generate a runable executable:

  1. a tiny modification is required in 'src/tools/GNUmakefile': change lines 355 through 362 from
    ifneq ($(BLAS_LIB),)
         ifeq ($(BLAS_SIZE),4)
             MAYBE_BLAS = --with-blas4="$(strip $(BLAS_LIB))"
         else
             MAYBE_BLAS = --with-blas8="$(strip $(BLAS_LIB))"
         endif
    endif

    to:

    ifneq ($(BLAS_LIB),)
         ifeq ($(BLAS_SIZE),4)
             MAYBE_BLAS = --with-blas4="$(strip $(BLAS_LIB))"
         else
             MAYBE_BLAS = --with-blas8="$(strip $(BLAS_LIB))"
         endif
    else
         MAYBE_BLAS = --without-blas
    endif
  2. The following environment variables should be set:
    setenv NWCHEM_TOP /path/to/nwchem-6.1
    setenv NWCHEM_TARGET LINUX64
    setenv NWCHEM_MODULES all
    setenv TCGRSH /usr/bin/ssh
    setenv USE_MPI y
    setenv USE_MPIF y
    setenv USE_MPIF4 y
    setenv MPI_LOC /opt/intel/impi/4.0.3.008
    setenv MPI_LIB $MPI_LOC/lib64
    setenv LIBMPI "-lmpi  -lmpich"
    setenv MPI_INCLUDE $MPI_LOC/include64
    setenv ARMCI_NETWORK OPENIB
    setenv MSG_COMMS MPI
    setenv IB_HOME /usr
    setenv IB_INCLUDE $IB_HOME/include/infiniband
    setenv IB_LIB $IB_HOME/lib64
    setenv LARGE_FILES TRUE
    setenv USE_NOFSCHECK TRUE
  3. then
    cd src; make nwchem_config; make FC=mpiifort CC=mpiicc

To build nwchem-6.3.revision2 with BLAS, LAPACK, ScaLAPACK from Intel MKL with Intel MPI use:

$ mpi-selector --set impi_intel-4.1.2.040

Afterwards logout and login. Then

$ cat env.sh
export NWCHEM_TOP=`pwd`
export LARGE_FILES=TRUE
export NWCHEM_TARGET=LINUX64
export NWCHEM_MODULES=all
export ENABLE_COMPONENT=yes
export TCGRSH=/usr/bin/ssh

export USE_MPI=y
export USE_MPIF=y
export USE_MPIF4=y
export MPI_HOME=$I_MPI_ROOT
export MPI_LOC=$I_MPI_ROOT
export LIBMPI="-lmpigf -lmpi -lmpigi -ldl -lrt -lpthread"
export MPI_LIB=$I_MPI_ROOT/lib64
export MPI_INCLUDE=$I_MPI_ROOT/include64

export MKL_INCLUDE=$MKLROOT/include

export USE_SCALAPACK=y
export SCALAPACK="-L$MKLROOT/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm"

export LAPACK_LIB="-mkl"

export BLASOPT="-L$MKLROOT/lib/intel64 -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lpthread -lm"

export FOPTIMIZE="-O3 -msse2 -no-prec-div -funroll-loops -unroll-aggressive"

export ARMCI_NETWORK=MELLANOX
export MSG_COMMS=MPI

export USE_64TO32=y

export MPIF77=mpiifort
export MPICC=mpiicc
export FC=ifort
export CC=icc
export CXX=icpc

Then

 $ source env.sh

To compile run

cd $NWCHEM_TOP/src
make nwchem_config
make 64_to_32 >& make.log
make >& make.log
  • doku/nwchem-vsc2.txt
  • Last modified: 2013/12/27 12:54
  • (external edit)