我想利用MATLAB调用CUDA程序,因此使用将cu文件利用mex方式编译成mexa64文件的形式直接调用,但在执行编译文件时报错:nvcc fatal : Unknown option '-fopenmp'
编译文件内容如下:
system( 'nvcc -Xcompiler -fopenmp -O3 --use_fast_math --compile -o DD3_GPU.o --compiler-options -fPIC -I/usr/local/cuda-10.2/include -I/usr/local/cuda-10.2/samples/common/inc "DD3_GPU.cu" ' );
% mex -v -largeArrayDims COMPFLAGS="$COMPFLAGS -fopenmp" -L"\usr\local\cuda\lib64\" -lcudart DD3_GPU_mex.cpp DD3_GPU_proj_ker.o DD3_GPU_back_ker.o
mexcuda -v -largeArrayDims COMPFLAGS="$COMPFLAGS -fopenmp" -L"/usr/local/cuda-10.2/lib64/" -lcudart DD3_GPU.cu
mexcuda -v DD3_GPU.cu
报错:
错误使用 mex
nvcc fatal : Unknown option '-fopenmp'
出错 mexcuda (第 168 行)
[varargout{1:nargout}] = mex(mexArguments{:});
出错 Compile_cu (第 3 行)
mexcuda -v -largeArrayDims COMPFLAGS="$COMPFLAGS -fopenmp" -L"/usr/local/cuda-10.2/lib64/" -lcudart DD3_GPU.cu
查阅一些资料说是因为MATLAB路径 :E:\MATLAB\toolbox\distcomp\gpu\extern\src\mex下,没有Visual Stdio没有对应版本的一https://img-mid.csdnimg.cn/release/static/image/mid/ask/77776002857612.png "#left")
个文件,但我查看了是有的,其他也没有太对应的解决方式,有人遇到同样的问题嘛,感谢。