Commit 0adf7cc4 authored by Arno Proeme's avatar Arno Proeme
Browse files

Added arch files and library build help

parent 8208c939
#
# module load openmpi cuda blas lapack
#
#
CC = gcc
CPP =
FC = mpif90
LD = mpif90
AR = ar -r
CPPFLAGS =
DFLAGS = -D__FFTW3 \
-D__LIBINT \
-D__LIBXC \
-D__parallel \
-D__SCALAPACK
SCALAPACK_LIB = /davide/home/userexternal/$USER/scalapack/scalapack
LIBINT_HOME = /davide/home/userexternal/$USER/cp2k/libs/libint/1.1.4
LIBXC_HOME = /davide/home/userexternal/$USER/cp2k/libs/libxc/4.1.1
FFTW_HOME = /davide/home/userexternal/$USER/fftw/3.3.8
FFTW_INC = $(FFTW_HOME)/include
FFTW_LIB = $(FFTW_HOME)/lib
FCFLAGS = $(DFLAGS) -O3 -ffast-math -ffree-form -funroll-loops -mcpu=power8\
-I$(FFTW_INC) -I$(LIBINT_HOME)/include -I$(LIBXC_HOME)/include
LDFLAGS = $(FCFLAGS) #-Wl,--start-group #-static
#LIBS = -L$(SCALAPACK_LIB) -lscalapack\
# -L$(LAPACK_LIB) -llapack\
# -L$(BLAS_LIB) -lblas\
# -L$(FFTW_LIB) -lfftw3\
# -L$(FFTW_LIB) -lfftw3_threads\
# -L$(LIBINT_HOME)/lib -lderiv\
# -L$(LIBINT_HOME)/lib -lint\
# -L$(LIBINT_HOME)/lib -lr12\
# -L$(LIBXC_HOME)/lib -lxcf03\
# -L$(LIBXC_HOME)/lib -lxc
LIBS = $(SCALAPACK_LIB)/libscalapack.a\
$(LAPACK_LIB)/liblapack.a\
$(BLAS_LIB)/libblas.a\
$(FFTW_LIB)/libfftw3.a\
$(FFTW_LIB)/libfftw3_threads.a\
$(LIBINT_HOME)/lib/libderiv.a\
$(LIBINT_HOME)/lib/libint.a\
$(LIBINT_HOME)/lib/libr12.a\
$(LIBXC_HOME)/lib/libxcf03.a\
$(LIBXC_HOME)/lib/libxc.a\
-ldl\
# -Wl,--end-group
\ No newline at end of file
```
module load gnu
./configure --prefix=/homeb/prcdeep/prdeep04/fftw/3.3.8 CFLAGS="-O3 -mcpu=power8"
make
make install
make clean
./configure --prefix=/homeb/prcdeep/prdeep04/fftw/3.3.8 CFLAGS="-O3 -mcpu=power8" --enable-threads
make
make install
```
```
module load gnu
export CC=gcc
export CXX=g++
CFLAGS="-O2 -ftree-vectorize -g -fno-omit-frame-pointer -mcpu=power8 -ffast-math"
CXXFLAGS=$CFLAGS
./configure --build=ppc64le-linux --prefix=/davide/home/userexternal/$USER/cp2k/libs/libint/1.1.4 --with-cc-optflags="${CFLAGS}" --with-cxx-optflags="${CXXFLAGS}"
make
make install
```
```
module load gnu
./configure --build=ppc64le CFLAGS="-mcpu=power8" --prefix=/davide/home/userexternal/$USER/cp2k/libs/libxc/4.1.1
make
make install
```
#
## export MODULEPATH=/usr/local/modulefiles/MISC:$MODULEPATH
## module load parastation/5.2.0-1
## export MKLROOT=/usr/local/intel/compilers_and_libraries_2018.0.128/linux/mkl
## export LD_LIBRARY_PATH=${MKLROOT}/lib
#
### module load Intel/2018.2.199-GCC-5.5.0 ParaStationMPI/5.2.1-1 imkl/2018.2.199
#
##### export MODULEPATH=/usr/local/software/haswell/Stages/2018a/modules/all/Compiler/mpi/intel/2018.2.199-GCC-5.5.0/:$MODULEPATH
##### module load ParaStationMPI/5.2.1-1
CC = gcc
CPP =
FC = mpif90
LD = mpif90
AR = ar -r
FFTW_LIB = /p/home/jusers/$USER/deep/fftw/3.3.8/lib
FFTW_INC = /p/home/jusers/$USER/deep/fftw/3.3.8/include
LIB_DIR = $(HOME)/cp2k/libs/
LIBINT_INC = $(LIB_DIR)/libint/1.1.4/include
LIBINT_LIB = $(LIB_DIR)/libint/1.1.4/lib
LIBXC_INC = $(LIB_DIR)/libxc/4.2.3/include
LIBXC_LIB = $(LIB_DIR)/libxc/4.2.3/lib
DFLAGS = -D__MKL -D__FFTW3 -D__LIBINT -D__LIBXC -D__parallel -D__SCALAPACK #-D__HAS_NO_SHARED_GLIBC
CPPFLAGS =
FCFLAGS = $(DFLAGS) -O3 -ffast-math -ffree-form -ffree-line-length-none\
-fopenmp -ftree-vectorize -funroll-loops -march=core-avx2\
-m64\
-I$(FFTW_INC) -I$(LIBINT_INC) -I$(LIBXC_INC) -I${MKLROOT}/include
LDFLAGS = $(FCFLAGS) #-static
LIBS = $(FFTW_LIB)/libfftw3.a\
$(FFTW_LIB)/libfftw3_threads.a\
-L$(MKLROOT)/lib/intel64\
-Wl,--no-as-needed\
-lmkl_scalapack_lp64\
-lmkl_gf_lp64\
-lmkl_sequential\
-lmkl_core\
-lmkl_blacs_intelmpi_lp64\
-lpthread -lm -ldl\
$(LIBXC_LIB)/libxcf03.a\
$(LIBXC_LIB)/libxc.a\
$(LIBINT_LIB)/libderiv.a\
$(LIBINT_LIB)/libint.a
```
CC=gcc
CXX=g++
./configure --prefix=/p/home/jusers/$USER/deep/fftw/3.3.8 CC=gcc CFLAGS="-march=core-avx2 -O3" --enable-avx2
make
make install
```
\ No newline at end of file
```
CC=gcc
CXX=g++
CFLAGS="-O2 -ftree-vectorize -g -fno-omit-frame-pointer -march=core-avx2 -ffast-math"
CXXFLAGS=$CFLAGS
./configure --prefix=/path/to/desired/install/location --with-cc-optflags="$CFLAGS" --with-cxx-optflags="$CXXFLAGS"
make
make install
```
```
CC=gcc
CXX=g++
./configure CFLAGS="-march=core-avx2" --prefix=/p/home/jusers/$USER/deep/cp2k/libs/libxc/4.2.3
make
make install
```
\ No newline at end of file
#
# module load openmpi3.1.2/gnu8
#
CC = gcc
CPP =
FC = mpif90
LD = mpif90
AR = ar -r
FFTW_DIR = /dibona_home_nfs/$USER/fftw/3.3.8
FFTW_LIB = $(FFTW_DIR)/lib
FFTW_INC = $(FFTW_DIR)/include
ARMPL_DIR = /opt/arm/armpl-19.0.0_ThunderX2CN99_RHEL-7_gcc_8.2.0_aarch64-linux/
ARMPL_INC = $(ARMPL_DIR)/include
ARMPL_LIB = $(ARMPL_DIR)/lib
LIB_DIR = $(HOME)/libs
LIBINT_INC = $(LIB_DIR)/libint/1.1.4/include
LIBINT_LIB = $(LIB_DIR)/libint/1.1.4/lib
LIBXC_INC = $(LIB_DIR)/libxc/4.2.3/include
LIBXC_LIB = $(LIB_DIR)/libxc/4.2.3/lib
SCALAPACK_DIR = /dibona_home_nfs/$USER/scalapack/scalapack-2.0.2
DFLAGS = -D__FFTW3 -D__LIBINT -D__LIBXC -D__parallel -D__SCALAPACK
CPPFLAGS =
FCFLAGS = $(DFLAGS) -O3 -ffast-math -ffree-form -ffree-line-length-none\
-fopenmp -ftree-vectorize -funroll-loops -march=armv8.1-a\
-mcpu=thunderx2t99 -mtune=thunderx2t99\
-ffp-contract=fast\
-I$(FFTW_INC) -I$(LIBINT_INC) -I$(LIBXC_INC) -I$(ARMPL_INC)
LDFLAGS = $(FCFLAGS) #-static
LIBS = $(FFTW_LIB)/libfftw3.a\
$(FFTW_LIB)/libfftw3_threads.a\
$(SCALAPACK_DIR)/libscalapack.a\
$(ARMPL_LIB)/libarmpl_lp64.a\
$(LIBXC_LIB)/libxcf03.a\
$(LIBXC_LIB)/libxc.a\
$(LIBINT_LIB)/libderiv.a\
$(LIBINT_LIB)/libint.a
```
module load gcc/8.2.0
./configure --prefix=/dibona_home_nfs/$USER/fftw/3.3.8 CC=gcc CFLAGS="-O3 -march=armv8.1-a -mtune=thunderx2t99 -mcpu=thunderx2t99 -funroll-loops"
make -j 16
make install
```
\ No newline at end of file
```
module load gcc/8.2.0
CC=gcc
CXX=g++
CFLAGS="-O2 -ftree-vectorize -g -fno-omit-frame-pointer -march=armv8.1-a -ffast-math"
CXXFLAGS=$CFLAGS
```
Downloaded new configure.guess to allow configure to recognise ARM platform, replacing bin/configure.guess:
<http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD>
```
./configure --prefix=/dibona_home_nfs/$USER/libs/libint/1.1.4 --with-cc-optflags="$CFLAGS" --with-cxx-optflags="$CXXFLAGS"
make
make install
```
```
module load gcc/8.2.0
./configure CFLAGS="-march=armv8.1-a" --prefix=/dibona_home_nfs/$USER/libs/libxc/4.2.3
make
make install
```
\ No newline at end of file
```
module load openmpi3.1.2/gnu8
```
## SLmake.inc:
```
CDEFS = -DAdd_
FC = mpif90
CC = mpicc
NOOPT = -O0
FCFLAGS = -O3 -march=armv8.1-a -mtune=thunderx2t99 -mcpu=thunderx2t99
CCFLAGS = -O3 -march=armv8.1-a -mtune=thunderx2t99 -mcpu=thunderx2t99
FCLOADER = $(FC)
CCLOADER = $(CC)
FCLOADFLAGS = $(FCFLAGS)
CCLOADFLAGS = $(CCFLAGS)
ARCH = ar
ARCHFLAGS = cr
RANLIB = ranlib
SCALAPACKLIB = libscalapack.a
BLASLIB = /opt/arm/armpl-19.0.0_ThunderX2CN99_RHEL-7_arm-hpc-compiler_19.0_aarch64-linux/lib/libarmpl_lp64.a
LAPACKLIB = /opt/arm/armpl-19.0.0_ThunderX2CN99_RHEL-7_arm-hpc-compiler_19.0_aarch64-linux/lib/libarmpl_lp64.a
LIBS = $(LAPACKLIB) $(BLASLIB)
```
```make -j 32```
\ No newline at end of file
#
# Load Intel 17.0 compilers
#
CC = mpiicc
CPP =
FC = mpiifort
LD = mpiifort
AR = xiar -r
CPPFLAGS =
DFLAGS = -D__parallel \
-D__SCALAPACK \
-D__MKL \
-D__FFTW3 \
-D__LIBINT
LIBINTROOT = /home/$USER/cp2k/libint/1.1.4/intel/17.0
IFLAGS = -I$(MKLROOT)/include \
-I$(MKLROOT)/include/fftw \
-I$(LIBINTROOT)/include
FCFLAGS = -qopenmp -xMIC-AVX512 $(DFLAGS) $(IFLAGS) -O2 -g -traceback -fpp -free
FCFLAGS2 = -qopenmp -xMIC-AVX512 $(DFLAGS) $(IFLAGS) -O0 -g -traceback -fpp -free
CFLAGS = $(DFLAGS) $(IFLAGS)
MKL_LIBS = $(MKLROOT)/lib/intel64/libmkl_scalapack_lp64.a \
-Wl,--start-group \
$(MKLROOT)/lib/intel64/libmkl_intel_lp64.a \
$(MKLROOT)/lib/intel64/libmkl_sequential.a \
$(MKLROOT)/lib/intel64/libmkl_core.a \
$(MKLROOT)/lib/intel64/libmkl_blacs_intelmpi_lp64.a \
-Wl,--end-group \
-lpthread -lm
LIBINT_LIBS = -L$(LIBINTROOT)/lib -lderiv -lint -lstdc++
LIBS = $(MKL_LIBS) $(LIBINT_LIBS)
LDFLAGS_C = $(FCFLAGS) -static-intel -nofor_main
LDFLAGS = $(FCFLAGS) -static-intel
# Required due to memory leak that occurs if high optimisations are used
mp2_optimize_ri_basis.o: mp2_optimize_ri_basis.F
$(FC) -c $(FCFLAGS2) $<
#
# module load GCC/8.2.0 ParaStationMPI/5.2.1-1 FFTW/3.3.8 imkl/2019.0.117
#
CC = gcc
CPP =
FC = mpif90
LD = mpif90
AR = ar -r
FFTW_INC = $(EBROOTFFTW)/include
FFTW_LIB = $(EBROOTFFTW)/lib
LIB_DIR = /p/project/cprpb68/$USER/cp2k/libs
LIBINT_INC = $(LIB_DIR)/libint/1.1.4/include
LIBINT_LIB = $(LIB_DIR)/libint/1.1.4/lib
LIBXC_INC = $(LIB_DIR)/libxc/4.2.3/include
LIBXC_LIB = $(LIB_DIR)/libxc/4.2.3/lib
DFLAGS = -D__MKL -D__FFTW3 -D__LIBINT -D__LIBXC -D__parallel -D__SCALAPACK #-D__HAS_NO_SHARED_GLIBC
CPPFLAGS =
FCFLAGS = $(DFLAGS) -O3 -ffast-math -ffree-form -ffree-line-length-none\
-fopenmp -ftree-vectorize -funroll-loops -march=skylake-avx512\
-m64\
-I$(FFTW_INC) -I$(LIBINT_INC) -I$(LIBXC_INC) -I$(MKLROOT)/include
LDFLAGS = $(FCFLAGS) #-static
LIBS = $(FFTW_LIB)/libfftw3.a\
$(FFTW_LIB)/libfftw3_threads.a\
-L$(MKLROOT)/lib/intel64\
-Wl,--no-as-needed\
-lmkl_scalapack_lp64\
-lmkl_gf_lp64\
-lmkl_sequential\
-lmkl_core\
-lmkl_blacs_intelmpi_lp64\
-lpthread -lm -ldl\
$(LIBXC_LIB)/libxcf03.a\
$(LIBXC_LIB)/libxc.a\
$(LIBINT_LIB)/libderiv.a\
$(LIBINT_LIB)/libint.a
```
module load GCC/8.2.0
CC=gcc
CXX=g++
CFLAGS="-O2 -ftree-vectorize -g -fno-omit-frame-pointer -march=skylake-avx512 -ffast-math"
CXXFLAGS=$CFLAGS
./configure --prefix=/p/project/cprpb68/$USER/cp2k/libs/libint/1.1.4 --with-cc-optflags="$CFLAGS" --with-cxx-optflags="$CXXFLAGS"
make -j 20
make install
```
\ No newline at end of file
```
module load GCC/8.2.0
```
make sure to unset CFLAGS and CXXFLAGS from before (libint)
```
./configure CFLAGS="-march=skylake-avx512" --prefix=/p/project/cprpb68/prpb6800/cp2k/libs/libxc/4.2.3
make -j 20
make install
```
\ No newline at end of file
# modules: CrayGNU cray-fftw cray-python cudatoolkit Libint libxc
NVCC = nvcc
CC = cc
CPP =
FC = ftn
LD = ftn
AR = ar -r
CPPFLAGS =
DFLAGS = -D__FFTW3 -D__parallel -D__SCALAPACK -D__ACC -D__DBCSR_ACC -D__FFTSG -D__LIBINT -D__LIBXC -D__GFORTRAN
CFLAGS = $(DFLAGS)
FCFLAGS = $(DFLAGS) -O3 -mavx -fopenmp -funroll-loops -ffast-math -ftree-vectorize -ffree-form -ffree-line-length-512
FCFLAGS += -I$(EBROOTLIBINT)/include -I$(EBROOTLIBXC)/include
LDFLAGS = $(FCFLAGS)
NVFLAGS = $(DFLAGS) -O3 -arch sm_60
LIBS = -lfftw3 -lfftw3_threads -lcudart -lcublas -lcufft -lrt
LIBS += $(EBROOTLIBINT)/lib/libderiv.a $(EBROOTLIBINT)/lib/libint.a $(EBROOTLIBINT)/lib/libr12.a -lstdc++
LIBS += -L$(EBROOTLIBXC)/lib -lxcf03 -lxc
# modules: CrayGNU cray-fftw cray-python Libint libxc flex Bison
CC = cc
CPP =
FC = ftn
LD = ftn
AR = ar -r
CPPFLAGS =
DFLAGS = -D__FFTW3 -D__parallel -D__SCALAPACK -D__LIBINT -D__LIBXC -D__GFORTRAN
CFLAGS = $(DFLAGS)
FCFLAGS = $(DFLAGS) -O3 -mavx -fopenmp -funroll-loops -ffast-math -ftree-vectorize -ffree-form -ffree-line-length-512
FCFLAGS += -I$(EBROOTLIBINT)/include -I$(EBROOTLIBXC)/include
LDFLAGS = $(FCFLAGS)
LIBS = -lfftw3 -lfftw3_threads
LIBS += $(EBROOTLIBINT)/lib/libderiv.a $(EBROOTLIBINT)/lib/libint.a $(EBROOTLIBINT)/lib/libr12.a -lstdc++
LIBS += -L$(EBROOTLIBXC)/lib -lxcf03 -lxc
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment