1. 程式人生 > >CUDA、MPI和SU混編,MakeFile檔案的編寫

CUDA、MPI和SU混編,MakeFile檔案的編寫

本人研究地震勘探的全波形反演,最近在用CUDA+MPI加速反演過程。
寫程式碼過程中最關鍵的是Makefile檔案的編寫,也是最難的。下面給出基於SU(Seismic Unix)的CUDA+MPI開發過程的Makefile檔案:

# Makefile for GPU program based on SU (CUDA+MPI+SU)

# Home path
SU_HOME = /home/xx/su
SU_HOME1 = /home/xx/su/src/Complex
MPI_HOME = /home/xx/openmpi
CUDA_HOME = /home/xx/cuda9


# Which compiler
NVCC=nvcc

# Include path
CFLAGS = -I$(SU_HOME)/include -I$(SU_HOME1)/include \
         -I
$(CUDA_HOME)/include -I$(CUDA_HOME)/samples/common/inc \
-I$(MPI_HOME)/include # Lib path LFLAGS = -L$(SU_HOME)/lib -L$(SU_HOME1)/lib \ -L$(MPI_HOME)/lib \ -L$(CUDA_HOME)/lib64 LD = -lsu -lpar -lcwp -lm \ -lcublas -lcurand -lcufft -lcusparse -llapack \ **-lgomp -Xcompiler -fopenmp -lmpi** CU_APPS=fdm2d_gpu_mpi all: ${CU_APPS} %
: %.cu -$(NVCC) -O2 -arch=sm_60 $(@F).cu -o [email protected] $(LD) $(LFLAGS) $(CFLAGS) clean: rm -f ${CU_APPS}

希望對大家有用。有什麼問題,歡迎留言。