我正在尝试将Theano与gpu一起使用。我的操作系统是Ubuntu 16.04
首先,输入import theano
将导致
Using cuDNN version 5110 on context None
Mapped name None to device cuda0: GeForce GTX 1080 (0000:01:00.0)
要查看我的GPU是否正在使用,请尝试test from theano documentation
我的〜/ .theanorc是
[global]
device = cuda0
floatX = float32
[nvcc]
fastmath = True
在这种情况下,测试说:
[GpuElemwise{exp,no_inplace}(<GpuArrayType<None>(float32, (False,))>),
HostFromGpu(gpuarray)(GpuElemwise{exp,no_inplace}.0)]
Looping 1000 times took 0.191431 seconds
Result is [ 1.23178029 1.61879349 1.52278066 ..., 2.20771813 2.29967761 1.62323296]
Used the cpu
但是使用device = gpu0
的旧后端说:
[GpuElemwise{exp,no_inplace}(<CudaNdarrayType(float32, vector)>), HostFromGpu(GpuElemwise{exp,no_inplace}.0)]
Looping 1000 times took 0.199280 seconds
Result is [ 1.23178029 1.61879349 1.52278066 ..., 2.20771813 2.29967761 1.62323296]
Used the gpu
所以我认为cuda出了问题。我怎么检查它是否正常?为什么“背景”是“无”?为什么测试会说“使用cpu”?
答案 0 :(得分:6)
尝试用cuda替换cuda0。
导入theano之后我有类似警告的文字:
在上下文中使用cuDNN版本5110无 映射名称无至设备cuda:GeForce GT 750M(0000:01:00.0)
我继续训练DNN,我可以看到速度比我在CPU上运行代码要快得多。所以,我想文本并不意味着GPU不起作用。