如何解决cudaSetDevice错误并正确运行这个深度学习代码?

时间:2015-07-07 10:19:05

标签: matlab cuda deep-learning conv-neural-network

我在面部表情识别中使用以下GPU代码: http://code.google.com/p/deep-learning-faces/

我的系统与作者相同'但CUDA版本比作者高出一点(5.5)。 (5.0)。

当我运行" script_face_exp.m"时,它说"使用mexcuConvNNoo Assertion失败错误:cudaSetDevice错误!'。 它的原因是: cudaErrorInvalidDevice这表示用户提供的设备序号与有效的CUDA设备不对应。

但我可以使用GPU进行计算,基于theano的代码可以很好地运行在GPU上。

如何解决使用GPU正确运行代码的问题?

1 个答案:

答案 0 :(得分:4)

script_face_exp调用函数gg来设置这些全局变量:

function [] = gg( gpunumber )
global GPUID;
global FERMI;
GPUID = 3;
FERMI = 1;

稍后在GPUID中使用全局变量SelectGPUFromServer来设置使用的GPU。

您可能没有ID为3的GPU(这意味着至少安装了4个GPU),因此您应该更改gg以将此变量设置为例如0(如果你有一个GPU)。