目录
版本选择
tensorflow、python、gcc、cuda、cudnn版本对应
已经装了gcc5.4.0(不用管,反正anaconda下又是另外一个gcc版本),打算装nvidia418.74 (但是据说418.30版本比较好)、cuda10.0.130、cudnn10.0、tensorflow1.13.1。
目前来说tensorflow支持的是python3.5和3.6,并不支持python3.7,省事起见,Anaconda的选择还是下载历史版本的内置python3.6的那种吧。所以根据py版本,选择支持py3.6的 Anaconda3-4.3.0
一.安装nvidia 418.74驱动
禁用BIOS中的secure boot,查找驱动:https://www.geforce.com/drivers
1.禁用nouveau驱动
这是ubuntu默认使用的开源显卡驱动,和nvidia驱动一起使用可能导致黑屏。
sudo gedit /etc/modprobe.d/blacklist.conf
在blacklist.conf文本最后添加:(禁用nouveau第三方驱动,之后也不需要改回来)
blacklist nouveau
options nouveau modeset=0
然后执行:
sudo update-initramfs -u
sudo reboot
重启后,验证:
lsmod | grep nouveau
如果没有屏幕输出,则说明禁用nouveau成功。
2.禁用X-Window服务
sudo service lightdm stop # 这会关闭图形界面
如果没有lightdm就安装,再禁用。
按 Ctrl-Alt+F1
进入命令行界面,输入用户名和密码登录tty命令行界面。
注意:在命令行输入:sudo service lightdm start
,然后按Ctrl-Alt+F7
即可恢复到图形界面。
3.卸载原有N卡驱动
#for case1: original driver installed by apt-get:
sudo apt-get remove --purge nvidia*
#for case2: original driver installed by runfile:
sudo chmod a+x NVIDIA-Linux-x86_64-418.74.run
sudo bash ./NVIDIA-Linux-x86_64-418.74.run --uninstall
如果原驱动是用apt-get安装的,就用第1种方法卸载。
如果原驱动是用runfile安装的,就用–uninstall命令卸载。其实,用runfile安装的时候也会卸载掉之前的驱动,所以不手动卸载亦可。
apt-get指令的autoclean,clean,autoremove的区别
4.安装nvidia
首先给驱动run文件赋予执行权限:
sudo chmod a+x NVIDIA-Linux-x86_64-418.74.run
然后执行以下命令安装驱动(前提是安装了GCC)。中途一切选项默认,忽略script failed和32位的报错。
sudo bash ./NVIDIA-Linux-x86_64-418.74.run –no-x-check -no-nouveau-check -no-opengl-files
- –no-opengl-files:表示只安装驱动文件,不安装OpenGL文件。这个参数不可省略,否则会导致登陆界面死循环,英语一般称为”login loop”或者”stuck in login”。
- –no-x-check:表示安装驱动时不检查X服务。
- –no-nouveau-check:表示安装驱动时不检查nouveau,非必需。
- -Z, --disable-nouveau:禁用nouveau。此参数非必需,因为之前已经手动禁用了nouveau。
sudo gedit ~/.bashrc
#写入
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
#生效
source ~/.bashrc
5.检查nvidia
nvidia-smi