0
我想在Ubuntu下使用GPUmat(MATLAB)。为什么我不能制作GPU变量? (无法使用cudaMalloc分配内存)
对于我的系统,GPUstart运作良好没有任何错误信息就像如下:
Starting GPU
- GPUmat version: 0.280
- Required CUDA version: 4.2
There is 1 device supporting CUDA
CUDA Driver Version: 4.20
CUDA Runtime Version: 3.0
Device 0: "GeForce GT 520"
CUDA Capability Major revision number: 2
CUDA Capability Minor revision number: 1
Total amount of global memory: 1073283072 bytes
- CUDA compute capability 2.1
...done
- Loading module EXAMPLES_CODEOPT
- Loading module EXAMPLES_NUMERICS
-> numerics21.cubin
- Loading module NUMERICS
-> numerics21.cubin
- Loading module RAND
但是当我尝试创建像'一个= GPUdouble变量(RAND(2)); “ 出现
Error using mxNumericArrayToGPUtypePtr
Unable to allocate memory using cudaMalloc
Error in GPUdouble (line 52)
p.slot = mxNumericArrayToGPUtypePtr(p,
double(A));
以下错误消息这是为什么hapenning我无法猜测任何理由的。你能给我一些建议来解决这个问题吗?我非常感谢你的帮助。
p.s)由于库问题,第一次,GPUstart不起作用。所以我根据GPUmat开发人员的建议将CUDA 4.2的所有库移动到了matlab库文件夹中。
谢谢!
如果您删除'rand',是否会发生同样的事情?例如,'a = GPUdouble(2)'。 –
您有一个不兼容的CUDA运行时版本。 GPUStart会告诉您“必需的CUDA版本:4.2”,但您已安装CUDA 3.0工具包。 – talonmies
@talonmies请发表回答。 – harrism