首页 文章

Theano无法找到Gpu - Ubuntu 16.04

提问于
浏览
2

警告(theano.sandbox.cuda):已安装CUDA,但设备gpu不可用(错误:cuda不可用)

尝试运行任何示例Theano程序时出现此错误 .

我已经尝试了thread中提供的所有建议的修复程序 .

nvcc --version 输出:

nvcc:NVIDIA(R)Cuda编译器驱动程序版权所有(c)2005-2015 NVIDIA Corporation基于Tue_Aug_11_14:27:32_CDT_2015 Cuda编译工具,7.5版,V7.5.17

nvidia-smi 输出:

Sat Dec 10 00:46:14 2016       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.57                 Driver Version: 367.57                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 1070    Off  | 0000:01:00.0     Off |                  N/A |
|  0%   37C    P0    33W / 151W |      0MiB /  8112MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

gcc版本:

(venv) rgalbo@blueberry:~$ gcc --version
gcc (Ubuntu 4.9.3-13ubuntu2) 4.9.3

我一直试图让它工作一段时间,希望有人能指出我正确的方向 .

1 回答

  • 1

    所以我终于能够让Theano找到gpu,我完成了here提供的步骤,以便清理我最初安装CUDA时可能发生的任何损坏安装 .

    在此之后,我运行 sudo apt-get install cuda ,为我的nvidia显卡安装了正确的驱动程序包 . 然后我继续从deb安装CUDA 8.0,这能够覆盖给我提出问题的7.5版本 .

    这是我现在可以从theano_test.py获得的输出:

    (venv) rgalbo@blueberry:~$ python theano_test.py
    Using gpu device 0: GeForce GTX 1070 (CNMeM is disabled, cuDNN 5103)
    [GpuElemwise{exp,no_inplace}(<CudaNdarrayType(float32, vector)>), HostFromGpu(GpuElemwise{exp,no_inplace}.0)]
    Looping 1000 times took 0.185949 seconds
    Result is [ 1.23178029  1.61879349  1.52278066 ...,  2.20771813  2.29967761
      1.62323296]
    Used the gpu
    

    这是我的 ~/.theanorc 文件:

    (venv) rgalbo@blueberry:~$ cat ~/.theanorc
    [global]
    floatX = float32
    device = gpu
    
    [nvcc]
    flags=-D_FORCE_INLINE
    
    [cuda]
    root = /usr/local/cuda-8.0
    

    每次单独安装后,我更新并重新启动服务器只是为了好,我发现这是有帮助的 .

相关问题