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:('编译节点时发生以下错误',GpuElemwise {exp ,no_inplace}((float64, vector)>), '\n', 'libnvrtc.so.7.5: 无法打开共享对象文件: 没有这样的文件或目录', '[GpuElemwise{exp,no_inplace}((float64, vector )>)]')

这真的很愚蠢,因为我有 CUDA 8,而不是 CUDA 7.5,所以它当然找不到 libnvrtc.so.7.5。如何告诉 theano 我使用的是 CUDA 8 而不是 CUDA 7.5 ?

我的 .bashrc 设置过于复杂:

  • 导出 PATH="/usr/local/cuda-8.0/bin:$PATH"
  • 导出 LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64"
  • 导出 CUDA_HOME=/usr/local/cuda-8.0
  • 导出 CUDA_ROOT=/usr/local/cuda-8.0
  • 导出 CPATH="$CPATH:~/.local/include"
  • 导出 CPATH="/usr/local/cuda-8.0/include:$CPATH"
  • 导出 LIBRARY_PATH="$LIBRARY_PATH:~/.local/lib"
  • 导出 LIBRARY_PATH="/usr/lib/nvidia-375:$LIBRARY_PATH"
  • 导出 LIBRARY_PATH="/usr/local/cuda-8.0/lib64:$LIBRARY_PATH"
  • 导出 LD_LIBRARY_PATH="$LD_LIBRARY_PATH:~/.local/lib"

我的 .theanorc 是:

[nvcc]

标志=-D_FORCE_INLINES

[全球的]

设备 = cuda0

[cuda]

根 = /usr/local/cuda-8.0/

4

2 回答 2

1

你不能。安装 CUDA 7.5 或安装针对 CUDA 8 构建的框架版本。没有办法让您尝试做的工作。

于 2017-04-09T16:03:02.960 回答
-1

编辑:鉴于您的卡是 Pascal 生成的并且 CUDA 7.5 是 Pascal 之前的,您也许不应该坚持尝试使这项工作。考虑到这一点...


虽然@talonmies 的回答是正确的,但以下至少一项(可能更多)实际上应该让 Theano 为您工作:

  1. 为针对 *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 驱动程序版本。

  2. 手动安装 CUDA 7.5。你可以从这里下载。将问题中提到的设置调整为指向/usr/local/cuda-7.5. 同样,请确保您没有安装较旧的 nVIDIA 驱动程序。

  3. 按照此处的安装说明进行操作。我不确定除了使用 pip 之外还有更多内容,但也许有。

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

于 2017-04-09T20:15:45.753 回答