I know how to compile a CUDA code from Matlab, i.e., by compiling to a PTX file and executing by parallel.gpu.CUDAKernel('function name');
I'm now in a trouble with launching a CUDA code using dynamic parallelism from Matlab.
I was able to manage PTX compilation with the command
nvcc -ptx DynamicParalell.cu -o DynamicParalell.ptxw64 -rdc=true -lcudadevrt -gencode=arch=compute_35,code=sm_35
The compilation was successful, but if I run the compiled code from Matlab by parallel.gpu.CUDAKernel('function name');
, I get the following error message:
An error occurred during PTX compilation of . The information log was:
The error log was: ptxas : fatal error : Unresolved extern function 'cudaGetParameterBuffer The CUDA error code was: CUDA_ERROR_NO_BINARY_FOR_GPU.
People talk about launching dynamic parallelism from Visual Studio, but not from Matlab.
Does anyone know how to do it?
I learned that error message cudaGetParameterBuffer
has to do with \Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\lib\x64\cudadevrt.dll
, which I already have.
Thanks in advance!