在 virtualenv 中使用 CUDA 为 Theano 服务
Use CUDA in virtualenv to serve Theano
由于缺少 root 权限,我在 Ubuntu 14.04 的 python3 virtualenv 中安装了 Theano 和 Lasagne。
运行 一些代码,我得到一个 ImportError: dnn not available
,据我所知,这是缺少 CUDA header 的结果,尽管它安装在 /usr/local/cuda-6.5/targets/x86_64-linux/include/cudnn.h
。
在 theano documentation 之后,我设置了环境变量 CUDA_ROOT=/usr/local/cuda-6.5
,这会产生一个额外的错误:
ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: libcublas.so.6.5: cannot open shared object file: No such file or directory
有什么方法可以将这个 CUDA 库包含到 virtualenv 中吗?
终于找到答案了。除了环境变量,我忘记在我的主目录中配置 .theanorc
,如 theano documentation 建议:
$ cat /home/user/.theanorc
[global]
floatX = float32
device = gpu0
[cuda]
root = /usr/local/cuda-6.5
谢谢!吸取教训仔细阅读文档...
由于缺少 root 权限,我在 Ubuntu 14.04 的 python3 virtualenv 中安装了 Theano 和 Lasagne。
运行 一些代码,我得到一个 ImportError: dnn not available
,据我所知,这是缺少 CUDA header 的结果,尽管它安装在 /usr/local/cuda-6.5/targets/x86_64-linux/include/cudnn.h
。
在 theano documentation 之后,我设置了环境变量 CUDA_ROOT=/usr/local/cuda-6.5
,这会产生一个额外的错误:
ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: libcublas.so.6.5: cannot open shared object file: No such file or directory
有什么方法可以将这个 CUDA 库包含到 virtualenv 中吗?
终于找到答案了。除了环境变量,我忘记在我的主目录中配置 .theanorc
,如 theano documentation 建议:
$ cat /home/user/.theanorc
[global]
floatX = float32
device = gpu0
[cuda]
root = /usr/local/cuda-6.5
谢谢!吸取教训仔细阅读文档...