Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# 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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# 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