|
1 | | -CUDA_HOME = /apps/free/cuda/7.5.18/ |
2 | | -GPU_ARCH = sm_30 |
| 1 | +CUDA_HOME = /opt/cuda/ |
| 2 | +#CUDA_HOME = /apps/free/cuda/7.5.18/ |
| 3 | +#CUTT_DIR = cutt/lib |
| 4 | +GPU_ARCH = sm_50 |
3 | 5 | OS:= $(shell uname) |
4 | 6 | ifeq ($(OS),Darwin) |
5 | 7 | CUDA_LIB = $(CUDA_HOME)/lib |
6 | 8 | CUDA_HEADER = $(CUDA_HOME)/include |
7 | 9 | CC = $(CUDA_HOME)/bin/nvcc -ccbin /usr/bin/clang --ptxas-options=-v#-save-temps |
8 | | -CFLAGS = -g -O3 -m64 -std=c++11 |
| 10 | +CFLAGS = -g -std=c++11 -Wno-deprecated-gpu-targets |
9 | 11 | else |
10 | 12 | CUDA_LIB = $(CUDA_HOME)/lib64 |
11 | 13 | CUDA_HEADER = $(CUDA_HOME)/include |
12 | 14 | CC = $(CUDA_HOME)/bin/nvcc --ptxas-options=-v --compiler-options -Wall #-save-temps |
13 | 15 | CHOSTFLAGS = #-fopenmp |
14 | | -CFLAGS = -g -O3 -std=c++11 -Xcompiler '-std=c++11' -Xcompiler '-fopenmp' #-malign-double |
| 16 | +CFLAGS = -g -O0 -std=c++11 -Xcompiler '-std=c++11' -Xcompiler '-fopenmp' #-L$(CUTT_DIR) -l:libcutt.a |
15 | 17 | endif |
16 | 18 |
|
| 19 | +CUDA_FLAGS = -lcufft |
| 20 | + |
17 | 21 | CLINKER = $(CC) |
18 | 22 | RM = /bin/rm |
19 | 23 | INCFLAGS = -I$(CUDA_HEADER) |
20 | 24 | LDFLAGS = -L$(CUDA_LIB) |
21 | 25 | EXECS = gpue # BINARY NAME HERE |
22 | 26 |
|
23 | | -gpue: fileIO.o kernels.o split_op.o tracker.o minions.o ds.o edge.o node.o lattice.o manip.o vort.o |
24 | | -#node.o edge.o lattice.o |
25 | | - $(CC) *.o $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) -lm -lcufft -lcudart -o gpue |
26 | | - #rm -rf ./*.o |
27 | | - |
28 | | -split_op.o: ./src/split_op.cu ./include/split_op.h ./include/kernels.h ./include/constants.h ./include/fileIO.h ./include/minions.h Makefile |
29 | | - $(CC) -c ./src/split_op.cu -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) -Xcompiler "-fopenmp" -arch=$(GPU_ARCH) |
30 | | - |
31 | | -kernels.o: ./include/split_op.h Makefile ./include/constants.h ./include/kernels.h ./src/kernels.cu |
32 | | - $(CC) -c ./src/kernels.cu -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) -arch=$(GPU_ARCH) |
33 | | - |
34 | | -fileIO.o: ./include/fileIO.h ./src/fileIO.cc Makefile |
35 | | - $(CC) -c ./src/fileIO.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) |
36 | | - |
37 | | -tracker.o: ./src/tracker.cc ./include/tracker.h ./include/fileIO.h |
38 | | - $(CC) -c ./src/tracker.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
39 | | - |
40 | | -minions.o: ./src/minions.cc ./include/minions.h |
41 | | - $(CC) -c ./src/minions.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
42 | | - |
43 | | -ds.o: ./src/ds.cc ./include/ds.h |
44 | | - $(CC) -c ./src/ds.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
45 | | - |
46 | | -node.o: ./src/node.cc ./include/node.h |
47 | | - $(CC) -c ./src/node.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
48 | | - |
49 | | -edge.o: ./src/edge.cc ./include/edge.h |
50 | | - $(CC) -c ./src/edge.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
51 | | - |
52 | | -lattice.o: ./src/lattice.cc ./include/lattice.h |
53 | | - $(CC) -c ./src/lattice.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
54 | | - |
55 | | -manip.o: ./src/manip.cu ./include/manip.h |
56 | | - $(CC) -c ./src/manip.cu -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
57 | | - |
58 | | -vort.o: ./src/vort.cc ./include/vort.h |
59 | | - $(CC) -c ./src/vort.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
60 | | - |
61 | | -graphtest.o: ./src/graphtest.cc |
62 | | - $(CC) -c ./src/graphtest.cc -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) |
63 | | - |
64 | | -gtest: edge.o node.o lattice.o graphtest.o |
65 | | - $(CC) $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CHOSTFLAGS) edge.o node.o lattice.o graphtest.o -o gtest |
| 27 | +DEPS = ./include/constants.h ./include/ds.h ./include/edge.h ./include/evolution.h ./include/fileIO.h ./include/init.h ./include/kernels.h ./include/lattice.h ./include/manip.h ./include/minions.h ./include/node.h ./include/operators.h ./include/parser.h ./include/split_op.h ./include/tracker.h ./include/unit_test.h ./include/vort.h ./include/vortex_3d.h ./include/dynamic.h |
66 | 28 |
|
67 | | -minions: ./src/minions.cc ./include/minions.h minions.o |
68 | | - $(CC) minions.o -o mintest $(INCFLAGS) $(CFLAGS) $(LDFLAGS) |
| 29 | +OBJ = fileIO.o kernels.o split_op.o tracker.o minions.o ds.o edge.o node.o lattice.o manip.o vort.o parser.o evolution.o init.o unit_test.o operators.o vortex_3d.o dynamic.o |
69 | 30 |
|
70 | | -tracker_test: tracker.o fileIO.o ./src/tracker.cc ./include/fileIO.h ./src/fileIO.cc ./include/tracker.h |
71 | | - $(CC) ./tracker.o ./fileIO.o -o tracker_test $(INCFLAGS) $(CFLAGS) $(LDFLAGS) |
| 31 | +%.o: ./src/%.cc $(DEPS) |
| 32 | + $(CC) -c -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) -Xcompiler "-fopenmp" -arch=$(GPU_ARCH) $< |
72 | 33 |
|
73 | | -default: gpue |
74 | | -all: gpue test |
| 34 | +%.o: ./src/%.cu $(DEPS) |
| 35 | + $(CC) -c -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CUDA_FLAGS) -Xcompiler "-fopenmp" -arch=$(GPU_ARCH) $< -dc |
75 | 36 |
|
76 | | -.c.o: |
77 | | - $(CC) $(INCFLAGS) $(CFLAGS) -c $< |
| 37 | +gpue: $(OBJ) |
| 38 | + $(CC) -o $@ $(INCFLAGS) $(CFLAGS) $(LDFLAGS) $(CUDA_FLAGS) -Xcompiler "-fopenmp" -arch=$(GPU_ARCH) $^ |
78 | 39 |
|
79 | 40 | clean: |
80 | | - @-$(RM) -f r_0 Phi_0 E* px_* py_0* xPy* xpy* ypx* x_* y_* yPx* p0* p1* p2* EKp* EVr* gpot wfc* Tpot 0* V_* K_* Vi_* Ki_* 0i* k s_* si_* *.o *~ PI* $(EXECS) $(OTHER_EXECS) *.dat *.png *.eps *.ii *.i *cudafe* *fatbin* *hash* *module* *ptx test* vort* v_opt*; |
| 41 | + @-$(RM) -f r_0 Phi_0 E* px_* py_0* xPy* xpy* ypx* x_* y_* yPx* p0* p1* p2* EKp* EVr* gpot wfc* Tpot 0* V_* K_* Vi_* Ki_* 0i* k s_* si_* *.o *~ PI* $(EXECS) $(OTHER_EXECS) *.dat *.eps *.ii *.i *cudafe* *fatbin* *hash* *module* *ptx test* vort* v_opt*; |
0 commit comments