我知道如何从Matlab编译CUDA代码,即编译成PTX文件并按parallel.gpu.CUDAKernel('function name');
执行
我现在遇到了使用Matlab动态并行性启动CUDA代码的麻烦。
我能够使用命令
管理PTX编译nvcc -ptx DynamicParalell.cu -o DynamicParalell.ptxw64 -rdc = true -lcudadevrt -gencode = arch = compute_35,code = sm_35
编译成功,但是如果我通过parallel.gpu.CUDAKernel('function name');
从Matlab运行编译代码,我会收到以下错误消息:
PTX编译期间发生错误。信息 日志是:
错误日志是:ptxas:致命错误:未解析的extern函数 'cudaGetParameterBuffer CUDA错误代码是: CUDA_ERROR_NO_BINARY_FOR_GPU。
人们谈论从Visual Studio启动动态并行,但不是从Matlab启动。
有谁知道怎么做?
我了解到错误消息cudaGetParameterBuffer
与我已经拥有的\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\lib\x64\cudadevrt.dll
有关。
提前致谢!