+1
This commit is contained in:
@@ -6,6 +6,9 @@ CXXFLAGS=-O3 -I$(CUDATK)/include -Iobjs_gpu/ -D_CUDA_
|
|||||||
#
|
#
|
||||||
NVCC=nvcc
|
NVCC=nvcc
|
||||||
NVCC_FLAGS=-O3 -arch=sm_35 -D_CUDA_
|
NVCC_FLAGS=-O3 -arch=sm_35 -D_CUDA_
|
||||||
|
ifdef PTXCC_REGMAX
|
||||||
|
NVCC_FLAGS += --maxrregcount=$(PTXCC_REGMAX)
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
LD=nvcc
|
LD=nvcc
|
||||||
LDFLAGS=-lcudart -lcudadevrt -arch=sm_35
|
LDFLAGS=-lcudart -lcudadevrt -arch=sm_35
|
||||||
@@ -26,6 +29,7 @@ ISPC_OBJS=$(ISPC_SRC:%.ispc=objs_gpu/%_ispc.o)
|
|||||||
ISPC_BCS=$(ISPC_SRC:%.ispc=objs_gpu/%_ispc.bc)
|
ISPC_BCS=$(ISPC_SRC:%.ispc=objs_gpu/%_ispc.bc)
|
||||||
ISPC_HEADERS=$(ISPC_SRC:%.ispc=objs_gpu/%_ispc.h)
|
ISPC_HEADERS=$(ISPC_SRC:%.ispc=objs_gpu/%_ispc.h)
|
||||||
CXX_OBJS=$(CXX_SRC:%.cpp=objs_gpu/%_gcc.o)
|
CXX_OBJS=$(CXX_SRC:%.cpp=objs_gpu/%_gcc.o)
|
||||||
|
CU_OBJS=$(CU_SRC:%.cu=objs_gpu/%_cu.o)
|
||||||
#NVCC_OBJS=$(NVCC_SRC:%.cu=objs_gpu/%_nvcc.o)
|
#NVCC_OBJS=$(NVCC_SRC:%.cu=objs_gpu/%_nvcc.o)
|
||||||
|
|
||||||
# PTXGEN = $(HOME)/ptxgen
|
# PTXGEN = $(HOME)/ptxgen
|
||||||
@@ -34,9 +38,16 @@ CXX_OBJS=$(CXX_SRC:%.cpp=objs_gpu/%_gcc.o)
|
|||||||
|
|
||||||
# .SUFFIXES: .bc .o .cu
|
# .SUFFIXES: .bc .o .cu
|
||||||
|
|
||||||
OBJS=$(ISPC_OBJS) $(CXX_OBJS) $(NVCC_OBJS)
|
OBJSgpu=$(ISPC_OBJS) $(CXX_OBJS) $(NVCC_OBJS)
|
||||||
|
PROGgpu = $(PROG)_gpu
|
||||||
|
|
||||||
all: dirs $(PROG) $(ISPC_BCS)
|
ifdef CU_SRC
|
||||||
|
OBJScu=$(CU_OBJS) $(CXX_OBJS) $(NVCC_OBJS)
|
||||||
|
PROGcu=$(PROG)_cu
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
all: dirs $(PROGgpu) $(PROGcu) $(ISPC_BCS)
|
||||||
|
|
||||||
dirs:
|
dirs:
|
||||||
/bin/mkdir -p objs_gpu/
|
/bin/mkdir -p objs_gpu/
|
||||||
@@ -44,10 +55,11 @@ dirs:
|
|||||||
objs_gpu/%.cpp objs_gpu/%.o objs_gpu/%.h: dirs
|
objs_gpu/%.cpp objs_gpu/%.o objs_gpu/%.h: dirs
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
echo $(CXX_OBJS)
|
/bin/rm -rf $(PROGcu) $(PROGgpu) objs_gpu
|
||||||
/bin/rm -rf $(PROG) objs_gpu
|
|
||||||
|
|
||||||
$(PROG): $(OBJS)
|
$(PROGgpu): $(OBJSgpu)
|
||||||
|
$(LD) -o $@ $^ $(LDFLAGS)
|
||||||
|
$(PROGcu): $(OBJScu)
|
||||||
$(LD) -o $@ $^ $(LDFLAGS)
|
$(LD) -o $@ $^ $(LDFLAGS)
|
||||||
|
|
||||||
objs_gpu/%_gcc.o: %.cpp $(ISPC_HEADERS)
|
objs_gpu/%_gcc.o: %.cpp $(ISPC_HEADERS)
|
||||||
@@ -55,6 +67,9 @@ objs_gpu/%_gcc.o: %.cpp $(ISPC_HEADERS)
|
|||||||
objs_gpu/%_gcc.o: ../%.cpp
|
objs_gpu/%_gcc.o: ../%.cpp
|
||||||
$(CXX) $(CXXFLAGS) -o $@ -c $<
|
$(CXX) $(CXXFLAGS) -o $@ -c $<
|
||||||
|
|
||||||
|
objs_gpu/%_cu.o: %.cu $(ISPC_HEADERS)
|
||||||
|
$(NVCC) $(NVCC_FLAGS) -o $@ -dc $<
|
||||||
|
|
||||||
objs_gpu/%_nvcc.o: ../%.cu
|
objs_gpu/%_nvcc.o: ../%.cu
|
||||||
$(NVCC) $(NVCC_FLAGS) -o $@ -c $<
|
$(NVCC) $(NVCC_FLAGS) -o $@ -c $<
|
||||||
objs_gpu/%_nvcc.o: %.cu
|
objs_gpu/%_nvcc.o: %.cu
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
PROG=mandelbrot_tasks_gpu
|
PROG=mandelbrot_tasks
|
||||||
ISPC_SRC=mandelbrot_tasks.ispc
|
ISPC_SRC=mandelbrot_tasks.ispc
|
||||||
|
CU_SRC=mandelbrot_tasks.cu
|
||||||
CXX_SRC=mandelbrot_tasks.cpp mandelbrot_tasks_serial.cpp
|
CXX_SRC=mandelbrot_tasks.cpp mandelbrot_tasks_serial.cpp
|
||||||
|
|
||||||
include ../common_gpu.mk
|
include ../common_gpu.mk
|
||||||
|
|||||||
Reference in New Issue
Block a user