Mercurial > hg > gpufilter
view Makefile @ 1:ae0773634e0b tip
project report.
author | Sofia Dimoudi <sofia.dimoudi@gmail.com> |
---|---|
date | Fri, 16 Sep 2016 15:49:19 +0100 |
parents | 2b63f74a3010 |
children |
line wrap: on
line source
CXX := g++ NVCC := nvcc CUDA_HOME := /usr/local/cuda CUDA_SAMP_DIR := $(CUDA_HOME)/samples/common INC := -I$(CUDA_HOME)/include -I. -I$(CUDA_SAMP_DIR)/inc LIB := -L$(CUDA_HOME)/lib64 -lcudart -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -fopenmp # CUDA architecture code generation flags (see README.txt) GENCODE_SM30 := -gencode arch=compute_20,code=sm_20 GENCODE_SM30 := -gencode arch=compute_30,code=sm_30 GENCODE_SM35 := -gencode arch=compute_35,code=sm_35 GENCODE_SM37 := -gencode arch=compute_37,code=sm_37 GENCODE_SM52 := -gencode arch=compute_52,code=sm_52 NVCCFLAGS := $(GENCODE_SM52) --ptxas-options=-v --use_fast_math -Xcompiler -Wall ifeq ($(CXX), g++) CXXFLAGS += -m64 -O3 -march=native -fopenmp else ifeq ($(CXX), icpc) CXXFLAGS += -m64 -O3 -xhost -openmp # -parallel (this seemed to perform worse)) endif ifeq ($(nvdbg),1) NVCCFLAGS += -g -G endif ifeq ($(linfo),1) NVCCFLAGS += -lineinfo endif CXXSRC := filtermain.cpp filters_host.cpp CXXOBJS := filtermain.o filters_host.o CUSRC := filters_cuda.cu CUOBJS := filters_cuda.o NVLOBJ := filterlink.o all: filters $(CUOBJS): %.o: %.cu $(NVCC) -dc -c $< -o $@ $(NVCCFLAGS) $(INC) filterlink.o: $(CUOBJS) $(NVCC) -arch=sm_52 -dlink $(CUOBJS) $(NVCCFLAGS) $(INC) -o $(NVLOBJ) $(CXXOBJS): %.o: %.cpp $(CXX) $(INC) $(CXXFLAGS) -o $@ -c $< filters: $(CXXOBJS) $(CUOBJS) $(NVLOBJ) $(CXX) $(CXXOBJS) $(CUOBJS) $(NVLOBJ) $(LIB) -o filters clean: rm -f filters rm -f *.o