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
DEBUG ?= 0 # Set to 1 for debug
# Need to -I this for user-defined functions to work
EXT_DIR = ../External_Functions/
MPI_PREFIX = $(I_MPI_ROOT)
CUDA_PREFIX = $(CUDAROOT)
#compile with gcc
CC=gcc
CPP=g++
MPICC=mpicc
NVCC=nvcc
CFLAGS=-O3 -lm -Wall -mavx -march=ivybridge -mtune=ivybridge -lrt
CPU_COMPILE= $(CC) $(CFLAGS) -I$(EXT_DIR)
CPU_COMPILE_OMP = $(CPU_COMPILE) -fopenmp
MPI_COMPILE= $(MPICC) -I$(EXT_DIR)
MPI_OMP_COMPILE= $(MPI_COMPILE) -fopenmp
GPU_MPI_CXX = $(NVCC) -L $(I_MPI_ROOT)/lib64 -lmpi -ccbin mpiicc
LDFLAGS ?=-L $(CUDA_PREFIX)/lib64 -lcudart -lcublas -lcusparse -lm -lrt
GPU_COMPILE = $(NVCC) -I $(CUDA_PREFIX)/include -arch sm_35 -I$(EXT_DIR) $(LDFLAGS)
GPU_MPI_COMPILE = $(GPU_MPI_CXX) -I $(CUDA_PREFIX)/include -I $(I_MPI_ROOT)/include -arch sm_35 -I$(EXT_DIR) $(LDFLAGS)
CPU_COMPILE_CUDA = $(CPP) $(CFLAGS) -I$(EXT_DIR) $(LDFLAGS)
#compile with icc
ICC =icc
MPICC=mpiicc
ICFLAGS=-O3 -Wall -axCORE-AVX2,CORE-AVX-I
#CPU_COMPILE= $(ICC) $(ICFLAGS) -I$(EXT_DIR)
#CPU_COMPILE_OMP = $(CPU_COMPILE) -qopenmp
#MPI_COMPILE= $(MPICC) $(ICFLAGS) -I$(EXT_DIR)
#MPI_OMP_COMPILE= $(MPI_COMPILE) -mt_mpi -qopenmp
ifeq ($(DEBUG), 1)
CPU_COMPILE += -D_DEBUG_
endif
CPU_COMPILE_OBJ= $(CPU_COMPILE) -c
CPU_COMPILE_OMP_OBJ= $(CPU_COMPILE_OMP) -c
MPI_COMPILE_OBJ= $(MPI_COMPILE) -c
CPU_COMPILE_CUDA_OBJ= $(CPU_COMPILE_CUDA) -c
GPU_COMPILE_OBJ= $(GPU_COMPILE) -c