如果使用官方的NVIDIA驱动安装不成功,如果查看nvidia-smi
发现NVIDIA显卡下没有运行任何进程那就表示驱动安装失败了,可以改用PPA的方式来安装。我是参考一下博客安装的:
http://blog.rickdyang.me/2017-03/install-tensorflow/
当前最新的版本是nvidia-387,推荐安装这个版本。安装成功后是这样的
而且可以通过nvidia-settings
中的设置更换独显和集显。
在当前这个时候,nvidia已经发布cuda9.0啦,但是tensorflow还只更新到1.3,这个版本是不支持cuda9.0的,默认支持cuda 8.0,如果错安装了cuda9.0 ,在import tensorflow
时会报错ImportError: libcudnn.so.8: cannot open shared object file: No such file or directory
,我们安装9.0对应的是libcudnn.so.9,所以还是安装8.0,别整些妖俄子啦。
这里有出现啦问题,虽说tensorflow不支持cuda 9.0,但是 他已经支持cudnn6.0了,所以网上现在大部分cuda 8.0+ cudnn 5.1也不适合,否则会报错ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory
,这样推荐安装cuda 8.0 + cudnn 6.0.
在上面的博客安装cudnn时,改操作为:
sudo rm -rf libcudnn.so.6.5 libcudnn.so
sudo ln -s libcudnn.so.6.5.18 libcudnn.so.6.5
sudo ln -s libcudnn.so.6.5 libcudnn.so
至此安装完成。接下来安装tensorflow,我是按照官网教程进行的,安装完成后发现jupter可以用,pycharm不能用,好吧跟别人完全反过来,这时候发现pycharm仍然报错ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory
,在已经安装正确版本cudnn的情况下这一定是环境变量 LD_LIBRARY_PATH没设置为=/usr/local/cuda-8.0/lib64,如果jupter出错,就在~/.bashrc里加入export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
,我这种情况,应该修改pycharm-community-2017.2.3/bin/pycharm.sh,大约在200行,LD_LIBRARY_PATH前面加入LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64
,可以使用tensorflow.