【发布时间】:2014-11-11 06:31:46
【问题描述】:
我正在尝试在 Matlab2014a 中使用 MEX 编译 CUDA 程序,但无法使其工作。 我安装了最新的 CUDA 工具箱 (6.5) 和驱动程序 (340.62) 并且示例工作正常,所以我猜它安装正确。
我还安装了 MS Visual Studio 2012 Professional 和 Matlab 2014a。
我遵循了 Matlab 帮助中“GPU 计算 -> 示例和如何 -> 运行包含 CUDA 代码的 MEX 函数”中的确切描述。 我的 CUDA 文件以 .cu 结尾(所以我正在尝试编译 Matlab 的标准示例 mexGPUExample.cu,但我得到与其他 .cu 文件相同的错误),mex_CUDA_win64.xml 在同一个文件夹中,环境变量 MW_NVCC_PATH 已设置在用户变量中正确,只是为了确保我还在 Matlab 中调用了“setenv('MW_NVCC_PATH,...)”。
如果我尝试用
编译一个 CUDA 示例mex -largeArrayDims mexGPUExample.cu
我收到以下错误:
cl : Command line warning D9024 : unrecognized source file type 'mexGPUExample.cu', object file assumed
cl : Command line warning D9027 : source file 'mexGPUExample.cu' ignored
cl : Command line warning D9021 : no action performed
D:\PROGRAMS\MATLAB~1\BIN\MEX.PL: Error: Compile of 'mexGPUExample.cu' failed.
Unable to complete successfully.
我也尝试使用正确设置编译器
mex -setup
并选择了 MS Visual Studio 编译器。
代码本身有效,因为我在其他系统上对其进行了测试。
我不知道我做错了什么。 任何帮助表示赞赏。
【问题讨论】: