Skip to content

Commit eeac083

Browse files
authored
Merge pull request #15 from treecode/14_fix
Closes #14
2 parents d316361 + e0422fe commit eeac083

4 files changed

Lines changed: 35 additions & 25 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@
66
*.ptxh
77
*.cle
88
*.clh
9+
*.swp

Makefile

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
CXX ?= g++
22
CC ?= gcc
3-
PREFIX ?= /usr/local
3+
PREFIX ?= $(PWD)
44

55
ifdef CUDA_HOME
6-
CUDA_TK ?= $(CUDA_HOME)
6+
CUDA_TK ?= $(CUDA_HOME)
7+
endif
8+
ifdef CUDA_PATH
9+
CUDA_TK ?= $(CUDA_PATH)
710
endif
811

912
.PHONY: all
10-
all: libsapporo.a libsapporo.so emulated_interfaces
13+
all: libsapporo2.a libsapporo2.so emulated_interfaces
1114

1215

1316
# Detect CUDA
@@ -57,7 +60,7 @@ ifndef BACKEND
5760
$(info BACKEND not set and OpenCL was detected, using OpenCL)
5861
BACKEND := OpenCL
5962
else
60-
$(error BACKEND not set and neither CUDA nor OpenGL was detected.)
63+
$(error BACKEND not set and neither CUDA nor OpenCL was detected.)
6164
endif
6265
endif
6366
else
@@ -93,7 +96,7 @@ endif
9396
# CUDA kernels
9497
ifeq ($(BACKEND), CUDA)
9598

96-
INCLUDES = -I$(CUDA_TK)
99+
INCLUDES = -I$(CUDA_TK)/include
97100
CXXFLAGS += -D__INCLUDE_KERNELS__
98101
LDFLAGS += -lcuda -fopenmp
99102

@@ -108,7 +111,7 @@ KERNELS = $(PTX) $(PTXH)
108111
$(NVCC) --forward-unknown-to-host-compiler $(CXXFLAGS) $(NVCCFLAGS) -ptx $< -o $@
109112

110113
src/CUDA/%.ptxh: src/CUDA/%.ptx
111-
xxd -i $< $@
114+
xxd -i $< | sed 's/src_CUDA_/CUDAKernels_/g' > $@
112115

113116
endif
114117

@@ -153,10 +156,10 @@ src/sapporohostclass.o: $(KERNELS)
153156
%.o: %.cpp
154157
$(CXX) $(CXXFLAGS) -c $< -o $@
155158

156-
libsapporo.a: $(OBJS)
159+
libsapporo2.a: $(OBJS)
157160
ar qv $@ $^
158161

159-
libsapporo.so: $(OBJS)
162+
libsapporo2.so: $(OBJS)
160163
$(CXX) -o $@ -shared $^ $(LDFLAGS)
161164

162165

@@ -168,20 +171,20 @@ EMU_SHARED_LIBS := $(EMU_SRC:src/interfaces/%lib.cpp=lib%.so)
168171
.PHONY: emulated_interfaces
169172
emulated_interfaces: $(EMU_STATIC_LIBS) $(EMU_SHARED_LIBS)
170173

171-
$(EMU_STATIC_LIBS): libsapporo.a
174+
$(EMU_STATIC_LIBS): libsapporo2.a
172175

173-
$(EMU_SHARED_LIBS): libsapporo.so
176+
$(EMU_SHARED_LIBS): libsapporo2.so
174177

175178

176179
lib%.a: src/interfaces/%lib.o
177180
ar qv $@ $^
178181

179182
lib%.so: src/interfaces/%lib.o
180-
$(CXX) -o $@ -shared $^ -L. -lsapporo $(LDFLAGS)
183+
$(CXX) -o $@ -shared $^ -L. -lsapporo2 $(LDFLAGS)
181184

182185

183186
# Installation
184-
INSTALLED_LIBS := $(PREFIX)/lib/libsapporo.a $(PREFIX)/lib/libsapporo.so
187+
INSTALLED_LIBS := $(PREFIX)/lib/libsapporo2.a $(PREFIX)/lib/libsapporo2.so
185188
INSTALLED_LIBS += $(EMU_STATIC_LIBS:%.a=$(PREFIX)/lib/%.a)
186189
INSTALLED_LIBS += $(EMU_SHARED_LIBS:%.so=$(PREFIX)/lib/%.so)
187190

tests/.Makefile.swp

-12 KB
Binary file not shown.

tests/Makefile

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,23 @@ F90 ?= ifort
66
.SUFFIXES: .o .cpp .ptx .cu
77

88
SAPPOROPATH=..
9-
SAPLIB2 = sapporo
9+
SAPLIB2 = sapporo2
1010
SAPLIB = lib$(SAPLIB2).a
1111
SAPLIBG6 = sapporoG6
1212

13-
14-
CUDA_TK ?= /usr/local/cuda
13+
ifdef CUDA_HOME
14+
CUDA_TK ?= $(CUDA_HOME)
15+
endif
16+
ifdef CUDA_PATH
17+
CUDA_TK ?= $(CUDA_PATH)
18+
else
19+
CUDA_TK ?= /usr/local/cuda
20+
endif
1521

1622
OFLAGS = -g -O3 -Wall -Wextra -Wstrict-aliasing=2 -fopenmp
1723
CXXFLAGS += -fPIC -fopenmp $(OFLAGS) -I$(CUDA_TK)/include
1824

19-
LDFLAGS += -lcuda -L$(CUDA_TK)/lib64
25+
LDFLAGS += -Wl,-rpath,'$$ORIGIN/..' -lcuda -L$(CUDA_TK)/lib64
2026

2127
INCLUDEPATH = $(SAPPOROPATH)/include
2228
CXXFLAGS += -I$(INCLUDEPATH) -I./ -I $(SAPPOROPATH)/src
@@ -32,34 +38,34 @@ all: $(OBJ) $(PROG) kernels
3238

3339

3440
kernels:
35-
rm -f CUDA && ln -s $(SAPPOROPATH)/CUDA CUDA
41+
rm -f CUDA && ln -s $(SAPPOROPATH)/src/CUDA CUDA
3642

3743
#$(PROG): $(OBJ)
3844
# $(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -lsapporo
3945

4046
test_gravity_block_cuda : test_gravity_block.o
41-
$(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
47+
$(CXX) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
4248

4349
test_gravity_block_g5_cuda: test_gravity_block_g5.o
44-
$(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
50+
$(CXX) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
4551

4652
test_gravity_block_6th_cuda : test_gravity_block_6th.o
47-
$(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
53+
$(CXX) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
4854

4955
test_performance_rangeN_cuda : test_performance_rangeN.o
50-
$(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
56+
$(CXX) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
5157

5258
test_performance_blockStep_cuda : test_performance_blockStep.o
53-
$(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
59+
$(CXX) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
5460

5561
test_performance_rangeN_6th_cuda : test_performance_rangeN_6th.o
56-
$(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
62+
$(CXX) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
5763

5864
test_performance_rangeN_g5_cuda : test_performance_rangeN_g5.o
59-
$(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
65+
$(CXX) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) $(LDFLAGS)
6066

6167
test_integrator_cuda : test_integrator.o
62-
$(CXX) $(LDFLAGS) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIBG6) $(LDFLAGS)
68+
$(CXX) $^ -o $@ -L $(SAPPOROPATH) -l$(SAPLIB2) -l$(SAPLIBG6) $(LDFLAGS)
6369

6470

6571
%.o: $(SRCPATH)/%.cpp

0 commit comments

Comments
 (0)