From 3dd1df7bb5259dbc1300fc36adaa14d243a9534e Mon Sep 17 00:00:00 2001 From: Dave Whipp <dwhipp@dal.ca> Date: Wed, 3 Feb 2010 03:42:11 +0000 Subject: [PATCH] New Makefile.inc(s) for SciNet --- src/Makefile.inc.gpc.intelmpi | 112 ++++++++++++++++++++++++++++++++++ src/Makefile.inc.gpc.mvapich2 | 110 +++++++++++++++++++++++++++++++++ src/Makefile.inc.gpc.openmpi | 110 +++++++++++++++++++++++++++++++++ 3 files changed, 332 insertions(+) create mode 100644 src/Makefile.inc.gpc.intelmpi create mode 100644 src/Makefile.inc.gpc.mvapich2 create mode 100644 src/Makefile.inc.gpc.openmpi diff --git a/src/Makefile.inc.gpc.intelmpi b/src/Makefile.inc.gpc.intelmpi new file mode 100644 index 00000000..5eb1fb79 --- /dev/null +++ b/src/Makefile.inc.gpc.intelmpi @@ -0,0 +1,112 @@ +# Define our compilers................................. +# +# The default - OpenMPI +#MPI_HOME=/scinet/gpc/mpi/openmpi/1.3.2-intel-v11.0-ofed +# The alternative - MVAPICH2 +#MPI_HOME=/scinet/gpc/mpi/mvapich2/1.4rc1-3378_intel-v11.0_ofed +# Alternative 2 - IntelMPI +MPI_HOME=/scinet/gpc/intel/impi/3.2.2.006 +F90 = $(MPI_HOME)/bin64/mpif90 +F77 = $(MPI_HOME)/bin64/mpif90 +CC = $(MPI_HOME)/bin64/mpicc + +#AR=ar +AR=xiar +BITS= + +IMKL = /scinet/gpc/intel/Compiler/11.1/056/mkl/include +INCLUDE=-I$(IMKL) + +# Define FORTRAN compiler flags....................... +# +# For the PGI compiler +#F90FLAGS = -O0 +#F77FLAGS = -O0 +F90FLAGS = -fast +F77FLAGS = -fast +#F90FLAGS = -O0 -mp -tpp7 -g -debug all -check all -implicitnone -warn unused -fp-stack-check -heap-arrays -ftrapuv -check pointers -check bounds +#F77FLAGS = -O0 -mp -tpp7 -g -debug all -check all -implicitnone -warn unused -fp-stack-check -heap-arrays -ftrapuv -check pointers -check bounds +#F90FLAGS = -O0 -i8 -fp-model strict -g -debug all -implicitnone -fp-stack-check -heap-arrays -ftrapuv -check pointers +#F77FLAGS = -O0 -i8 -fp-model strict -g -debug all -implicitnone -fp-stack-check -heap-arrays -ftrapuv -check pointers +#F90FLAGS = -O0 -fp-model strict -g -debug all +#F77FLAGS = -O0 -fp-model strict -g -debug all +#F90FLAGS = -fast -Mipa=fast,inline -Kieee -tp amd64 +#F77FLAGS = -fast -Mipa=fast,inline -Kieee -tp amd64 +#F90FLAGS = -O2 -Kieee -tpp7 +#F77FLAGS = -O2 -Kieee -tpp7 + +# Define C compiler flags............................. +# +#CFLAGS = -O0 -I. +CFLAGS = -fast -I. +#CFLAGS = -O0 -DMKL_ILP64 -I. -fp-model strict -g -debug all +#CFLAGS = -O0 -I. -fp-model strict -g -debug all +#CFLAGS = -fast -Mipa=fast,inline -Msmartalloc -I. -Kieee -tp amd64 +#CFLAGS = -O2 -I. -Kieee -tpp7 + +# Libraries +#SCALAPACK = -L/scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t -lmkl_scalapack_lp64 + +# Blacs +# +#BLACSCINIT = /usr/local/blacs/LIB/blacsCinit_MPI-LINUX-0.a +#BLACSFINIT = /usr/local/blacs/LIB/blacsF77init_MPI-LINUX-0.a +#BLACSL = /usr/local/blacs/LIB/blacs_MPI-LINUX-0.a +#BLACSCINIT = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSFINIT = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSL = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSC = $(BLACSCINIT) $(BLACSL) $(BLACSCINIT) +#BLACSF = $(BLACSFINIT) $(BLACSL) $(BLACSFINIT) +#BLACS = $(BLACSC) $(BLACSF) + +# Intel MKL libs +LMKL = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib + +# MPI +# +MPI = -L$(MPI_HOME)/lib64 -lmpi +#MPI = -L$(MPI_HOME)/lib -lmpich + +WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64/lib/Intel +#WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64-MPI2 + +# Use Google's TCMalloc +#TCML = /home/dwhipp/software/tcml + +LIBS = \ + -LOCTREE -lOctree$(BITS) \ + -LNN -lnn_f$(BITS) \ + -LNN -lnn_c$(BITS) \ + -LCASCADE -lcascade$(BITS) \ + -LRESAMPLE -lresample$(BITS) \ + -L$(WSMP) -lpwsmp64mpi2 \ + -L$(LMKL) -lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64 \ + -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 \ + $(MPI) -lpthread + #-L$(TCML) -ltcmalloc_minimal \ + #-L$(TCML) -lstacktrace \ + #-L$(TCML) -lunwind \ + #-L$(LMKL) -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 \ + +# The Makefiles look at compile output with this +PAGER=more + +# compile rules....................................... +# +COMPILE_OUT=$(NAME)$(BITS).compile +.SUFFIXES: +.SUFFIXES: .o .c .f .f90 +.f90.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(F90) $(F90FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1 + $(F90) $(F90FLAGS) $(INCLUDES) -c $< >>$(COMPILE_OUT) 2>&1 + +.f.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(F77) $(F77FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1 + $(F77) $(F77FLAGS) $(INCLUDES) -c $< >>$(COMPILE_OUT) 2>&1 + +.c.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(CC) $(CFLAGS) -c $<" >>$(COMPILE_OUT) 2>&1 + $(CC) $(CFLAGS) -c $< >>$(COMPILE_OUT) 2>&1 diff --git a/src/Makefile.inc.gpc.mvapich2 b/src/Makefile.inc.gpc.mvapich2 new file mode 100644 index 00000000..a9c18551 --- /dev/null +++ b/src/Makefile.inc.gpc.mvapich2 @@ -0,0 +1,110 @@ +# Define our compilers................................. +# +# The default - OpenMPI +#MPI_HOME=/scinet/gpc/mpi/openmpi/1.3.2-intel-v11.0-ofed +# The alternative - MVAPICH2 +MPI_HOME=/scinet/gpc/mpi/mvapich2/1.4rc1-3378_intel-v11.0_ofed +F90 = $(MPI_HOME)/bin/mpif90 +F77 = $(MPI_HOME)/bin/mpif90 +CC = $(MPI_HOME)/bin/mpicc + +#AR=ar +AR=xiar +BITS= + +IMKL = /scinet/gpc/intel/Compiler/11.1/056/mkl/include +INCLUDE=-I$(IMKL) + +# Define FORTRAN compiler flags....................... +# +# For the PGI compiler +#F90FLAGS = -O0 +#F77FLAGS = -O0 +F90FLAGS = -fast +F77FLAGS = -fast +#F90FLAGS = -O0 -mp -tpp7 -g -debug all -check all -implicitnone -warn unused -fp-stack-check -heap-arrays -ftrapuv -check pointers -check bounds +#F77FLAGS = -O0 -mp -tpp7 -g -debug all -check all -implicitnone -warn unused -fp-stack-check -heap-arrays -ftrapuv -check pointers -check bounds +#F90FLAGS = -O0 -i8 -fp-model strict -g -debug all -implicitnone -fp-stack-check -heap-arrays -ftrapuv -check pointers +#F77FLAGS = -O0 -i8 -fp-model strict -g -debug all -implicitnone -fp-stack-check -heap-arrays -ftrapuv -check pointers +#F90FLAGS = -O0 -fp-model strict +#F77FLAGS = -O0 -fp-model strict +#F90FLAGS = -fast -Mipa=fast,inline -Kieee -tp amd64 +#F77FLAGS = -fast -Mipa=fast,inline -Kieee -tp amd64 +#F90FLAGS = -O2 -Kieee -tpp7 +#F77FLAGS = -O2 -Kieee -tpp7 + +# Define C compiler flags............................. +# +#CFLAGS = -O0 -I. +CFLAGS = -fast -I. +#CFLAGS = -O0 -DMKL_ILP64 -I. -fp-model strict -g -debug all +#CFLAGS = -O0 -I. -fp-model strict +#CFLAGS = -fast -Mipa=fast,inline -Msmartalloc -I. -Kieee -tp amd64 +#CFLAGS = -O2 -I. -Kieee -tpp7 + +# Libraries +#SCALAPACK = -L/scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t -lmkl_scalapack_lp64 + +# Blacs +# +#BLACSCINIT = /usr/local/blacs/LIB/blacsCinit_MPI-LINUX-0.a +#BLACSFINIT = /usr/local/blacs/LIB/blacsF77init_MPI-LINUX-0.a +#BLACSL = /usr/local/blacs/LIB/blacs_MPI-LINUX-0.a +#BLACSCINIT = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSFINIT = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSL = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSC = $(BLACSCINIT) $(BLACSL) $(BLACSCINIT) +#BLACSF = $(BLACSFINIT) $(BLACSL) $(BLACSFINIT) +#BLACS = $(BLACSC) $(BLACSF) + +# Intel MKL libs +LMKL = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib + +# MPI +# +#MPI = -L$(MPI_HOME)/lib -lmpi +MPI = -L$(MPI_HOME)/lib -lmpich + +#WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64/lib/Intel +WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64-MPI2 + +# Use Google's TCMalloc +#TCML = /home/dwhipp/software/tcml + +LIBS = \ + -LOCTREE -lOctree$(BITS) \ + -LNN -lnn_f$(BITS) \ + -LNN -lnn_c$(BITS) \ + -LCASCADE -lcascade$(BITS) \ + -LRESAMPLE -lresample$(BITS) \ + -L$(WSMP) -lpwsmp64mpi2 \ + -L$(LMKL) -lmkl_scalapack_lp64 -lmkl_blacs_lp64 \ + -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 \ + $(MPI) -lpthread + #-L$(TCML) -ltcmalloc_minimal \ + #-L$(TCML) -lstacktrace \ + #-L$(TCML) -lunwind \ + #-L$(LMKL) -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 \ + +# The Makefiles look at compile output with this +PAGER=more + +# compile rules....................................... +# +COMPILE_OUT=$(NAME)$(BITS).compile +.SUFFIXES: +.SUFFIXES: .o .c .f .f90 +.f90.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(F90) $(F90FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1 + $(F90) $(F90FLAGS) $(INCLUDES) -c $< >>$(COMPILE_OUT) 2>&1 + +.f.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(F77) $(F77FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1 + $(F77) $(F77FLAGS) $(INCLUDES) -c $< >>$(COMPILE_OUT) 2>&1 + +.c.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(CC) $(CFLAGS) -c $<" >>$(COMPILE_OUT) 2>&1 + $(CC) $(CFLAGS) -c $< >>$(COMPILE_OUT) 2>&1 diff --git a/src/Makefile.inc.gpc.openmpi b/src/Makefile.inc.gpc.openmpi new file mode 100644 index 00000000..141607b5 --- /dev/null +++ b/src/Makefile.inc.gpc.openmpi @@ -0,0 +1,110 @@ +# Define our compilers................................. +# +# The default - OpenMPI +MPI_HOME=/scinet/gpc/mpi/openmpi/1.3.2-intel-v11.0-ofed +# The alternative - MVAPICH2 +#MPI_HOME=/scinet/gpc/mpi/mvapich2/1.4rc1-3378_intel-v11.0_ofed +F90 = $(MPI_HOME)/bin/mpif90 +F77 = $(MPI_HOME)/bin/mpif90 +CC = $(MPI_HOME)/bin/mpicc + +#AR=ar +AR=xiar +BITS= + +IMKL = /scinet/gpc/intel/Compiler/11.1/056/mkl/include +INCLUDE=-I$(IMKL) + +# Define FORTRAN compiler flags....................... +# +# For the PGI compiler +#F90FLAGS = -O0 +#F77FLAGS = -O0 +F90FLAGS = -fast +F77FLAGS = -fast +#F90FLAGS = -O0 -mp -tpp7 -g -debug all -check all -implicitnone -warn unused -fp-stack-check -heap-arrays -ftrapuv -check pointers -check bounds +#F77FLAGS = -O0 -mp -tpp7 -g -debug all -check all -implicitnone -warn unused -fp-stack-check -heap-arrays -ftrapuv -check pointers -check bounds +#F90FLAGS = -O0 -i8 -fp-model strict -g -debug all -implicitnone -fp-stack-check -heap-arrays -ftrapuv -check pointers +#F77FLAGS = -O0 -i8 -fp-model strict -g -debug all -implicitnone -fp-stack-check -heap-arrays -ftrapuv -check pointers +#F90FLAGS = -O0 -fp-model strict -g -debug all +#F77FLAGS = -O0 -fp-model strict -g -debug all +#F90FLAGS = -fast -Mipa=fast,inline -Kieee -tp amd64 +#F77FLAGS = -fast -Mipa=fast,inline -Kieee -tp amd64 +#F90FLAGS = -O2 -Kieee -tpp7 +#F77FLAGS = -O2 -Kieee -tpp7 + +# Define C compiler flags............................. +# +#CFLAGS = -O0 -I. +CFLAGS = -fast -I. +#CFLAGS = -O0 -DMKL_ILP64 -I. -fp-model strict -g -debug all +#CFLAGS = -O0 -I. -fp-model strict -g -debug all +#CFLAGS = -fast -Mipa=fast,inline -Msmartalloc -I. -Kieee -tp amd64 +#CFLAGS = -O2 -I. -Kieee -tpp7 + +# Libraries +#SCALAPACK = -L/scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t -lmkl_scalapack_lp64 + +# Blacs +# +#BLACSCINIT = /usr/local/blacs/LIB/blacsCinit_MPI-LINUX-0.a +#BLACSFINIT = /usr/local/blacs/LIB/blacsF77init_MPI-LINUX-0.a +#BLACSL = /usr/local/blacs/LIB/blacs_MPI-LINUX-0.a +#BLACSCINIT = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSFINIT = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSL = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib/em64t/libmkl_blacs_openmpi_lp64.a +#BLACSC = $(BLACSCINIT) $(BLACSL) $(BLACSCINIT) +#BLACSF = $(BLACSFINIT) $(BLACSL) $(BLACSFINIT) +#BLACS = $(BLACSC) $(BLACSF) + +# Intel MKL libs +LMKL = /scinet/gpc/intel/Compiler/11.1/056/mkl/lib + +# MPI +# +MPI = -L$(MPI_HOME)/lib -lmpi +#MPI = -L$(MPI_HOME)/lib -lmpich + +WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64/lib/Intel +#WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64-MPI2 + +# Use Google's TCMalloc +#TCML = /home/dwhipp/software/tcml + +LIBS = \ + -LOCTREE -lOctree$(BITS) \ + -LNN -lnn_f$(BITS) \ + -LNN -lnn_c$(BITS) \ + -LCASCADE -lcascade$(BITS) \ + -LRESAMPLE -lresample$(BITS) \ + -L$(WSMP) -lpwsmp64mpi2 \ + -L$(LMKL) -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 \ + -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 \ + $(MPI) -lpthread + #-L$(TCML) -ltcmalloc_minimal \ + #-L$(TCML) -lstacktrace \ + #-L$(TCML) -lunwind \ + #-L$(LMKL) -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 \ + +# The Makefiles look at compile output with this +PAGER=more + +# compile rules....................................... +# +COMPILE_OUT=$(NAME)$(BITS).compile +.SUFFIXES: +.SUFFIXES: .o .c .f .f90 +.f90.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(F90) $(F90FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1 + $(F90) $(F90FLAGS) $(INCLUDES) -c $< >>$(COMPILE_OUT) 2>&1 + +.f.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(F77) $(F77FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1 + $(F77) $(F77FLAGS) $(INCLUDES) -c $< >>$(COMPILE_OUT) 2>&1 + +.c.o: + @echo "--" >>$(COMPILE_OUT) 2>&1 + @echo "$(CC) $(CFLAGS) -c $<" >>$(COMPILE_OUT) 2>&1 + $(CC) $(CFLAGS) -c $< >>$(COMPILE_OUT) 2>&1 -- GitLab