大虾们好:
最近我对一个CPU程序进行了GPU的移植
修改了其中一个类,然后添加了一个核函数的cu文件
但是现在我不知道怎么把GPU部分的计算加入原来的makefile文件请指教
具体情况如下:
原来的makefile文件如下:
CC = gcc
CXX = g++
CINS = -I /opt/intel/mkl/include
-I /opt/intel/compiler/include
CXXINS = $(CINS)
CFLAGS = -Wno-deprecated -O3
CXXFLASG= $(CFLAGS)
LFLAGS =
#CLIBS = -Wl,–rpath,/opt/intel/mkl/lib/em64t -L /opt/intel/mkl/lib/em64t -lmkl_lapack -lmkl
PROGRAM = biology_gcc
OBJECTS = $(FILE.o)
FILE.o = AlgorithmNBM.o biology.o stdafx.o util.o XJScore.o
XJEdge.o XJEdgeList.o XJFileStream.o XJHomogen.o
XJHomogenMap.o XJNode.o XJNodeList.o
#implementation
.SUFFIXES: .o .cpp
.cpp.o:
$(CXX) -c $(CXXINS) $(CXXFLAGS) -o $@ $<
biology: $(OBJECTS)
$(CXX) $(CXXFLAG) $(LFLAGS) -o $@ $(FILE.o) $(CLIBS)
all: $(PROGRAM)
AlgorithmNBM.o: AlgorithmNBM.cpp AlgorithmNBM.h
$(CXX) $(CXXINS) $(CFLAGS) -c $<
clean:
rm -rf *.o main
工程一共有
AlgorithmNBM.cpp biology.cpp stdafx.cpp util.cpp XJScore.cpp XJEdge.cpp XJEdgeList.cpp XJFileStream.cpp XJHomogen.cpp XJHomogenMap.cpp XJNode.cpp XJNodeList.cpp
12个源文件以及相应的头文件
修改后的情况:
我修改了其中 AlgorithmNBM.cpp 为 AlgorithmNBM.cu ,添加了核函数computeSim.cu
在AlgorithmNBM.cu的一个方法中调用核函数
核函数只是完成其中的一部分计算,原来的编译和运行规则不变
请问我应该怎么写这个makefile?
谢谢