首页 文章

Theano搜索CUDA 7.5文件,但我安装了CUDA 8 . 如何告诉它使用CUDA 8?

提问于
浏览
0

我使用theano 0.9.0,CUDA 8.0.61,gcc版本4.9.3,NVIDIA UNIX x86_64内核模块375.39,Ubuntu 16.04.2 LTS和我有一个geforce 1060.CUDA工作,因为我已经完成了测试 .

但每当我使用theano(http://deeplearning.net/software/theano/tutorial/using_gpu.html)进行gpu测试时,我收到此错误:ImportError:('The following error happened while compiling the node',GpuElemwise {exp,no_inplace}((float64,vector)>),_ '\n','libnvrtc.so.7.5: cannot open shared object file: No such file or directory','[GpuElemwise{exp,no_inplace}((float64, vector)>)]')

这真是愚蠢,因为我有CUDA 8,而不是CUDA 7.5所以当然找不到libnvrtc.so.7.5 . 我怎么能告诉theano我使用的是CUDA 8而不是CUDA 7.5?

我的.bashrc设置过于复杂:

  • export PATH = "/usr/local/cuda-8.0/bin:$PATH"

  • export LD_LIBRARY_PATH = "/usr/local/cuda-8.0/lib64"

  • export CUDA_HOME = / usr / local / cuda-8.0

  • export CUDA_ROOT = / usr / local / cuda-8.0

  • export CPATH = "$CPATH:~/.local/include"

  • export CPATH = "/usr/local/cuda-8.0/include:$CPATH"

  • export LIBRARY_PATH = "$LIBRARY_PATH:~/.local/lib"

  • export LIBRARY_PATH = "/usr/lib/nvidia-375:$LIBRARY_PATH"

  • export LIBRARY_PATH = "/usr/local/cuda-8.0/lib64:$LIBRARY_PATH"

  • export LD_LIBRARY_PATH = "$LD_LIBRARY_PATH:~/.local/lib"

而我的.theanorc是:

[NVCC]

标志= -D_FORCE_INLINES

[全球]

device = cuda0

[CUDA]

root = /usr/local/cuda-8.0/

2 回答

  • 1

    Edit: 你可能不应该坚持尝试做这项工作,因为你的卡是Pascal代,而CUDA 7.5是帕斯卡前 . 考虑到这一点...


    虽然@talonmies的答案是正确的,但至少有一个(可能更多)以下的事情应该让Theano为你工作:

    • 为针对* buntu 16.04 Xenial的较新版本的CUDA添加软件包存储库:
    deb http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial main
    deb-src http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial main
    

    把这些文件命名为 /etc/apt/sources.list.d/graphics-drivers-ppa-xenial.list - 但是如果升级到* buntu的更新版本,请记得删除/更新它 . 这可以让您访问CUDA 7.5 . 但请确保不要安装较旧的nVIDIA驱动程序版本 .

    • 手动安装CUDA 7.5 . 您可以从here下载它 . 调整问题中提到的设置以指向 /usr/local/cuda-7.5 . 同样,请确保您不安装旧的nVIDIA驱动程序 .

    • 按照安装说明here . 除了使用pip之外,我还有更多的东西,但也许有 .

    警告:我自己从未使用过Theano .

  • -1

    你不能 . 安装CUDA 7.5或安装针对CUDA 8构建的框架版本 . 没有办法让你想要做的工作 .

相关问题