最近折腾了一个deepin系统,尝试配置了一下pytorch和tf对应的gpu版本,走了不少弯路。其实整个流程不出错误的话非常简单,这里简单做一下备忘。
显卡驱动配置
目前新版本的deepin系统都自带一个显卡驱动管理器,被这个东西坑哭了。使用这个安装的闭源驱动和英伟达官方的驱动是有区别的,虽然都可以nvidia-smi命令查看驱动状态,但是如果安装了这个驱动,后面的步骤无法识别的。
1 下载官方驱动
去英伟达官网,根据型号,下载对应的驱动。长寿命和短寿命不太清楚,个人下了短寿命版本。
2 禁用nouveau驱动
这一步是看大部分人都有提到的,但是我个人没碰到这个情况。
先查看是否已经禁用
lsmod | grep nouveau
如果屏幕没输出,说明已经禁用。不然的话执行以下操作:
sudo vim /etc/modprobe.d/blacklist.conf
文本最后添加
blacklist nouveau
options nouveau modeset=0
执行
sudo update-initramfs -u
重启之后再次查看,如果没有输出,说明成功。 如果还是有问题,建议移步其他地方查看解决方案。
3 清理现存驱动
如果没有装驱动,可以直接跳过这个步骤。
3.1 deb安装驱动
如果用deb安装了驱动,系统的那个显卡驱动管理就是属于此范畴。
sudo apt-get remove --purge nvidia*
zsh可能会找不到对应命令,要切回到bash
3.2 已安装老版本英伟达驱动
sudo apt-get remove nvidia-driver nvidia-kernel-dkms glx-alternative-nvidia
或
sudo nvidia-uninstall
sudo nvidia-installer --uninstall
4 安装驱动
首先进入控制台界面(ALT+CTRL+F4)。
关闭图形界面
sudo service lightdm stop
进入下载的驱动文件路径
# 添加权限
sudo chmod a+x NVIDIA-Linux-x86_64-430.26.run
# 安装
sudo sh ./NVIDIA-Linux-x86_64-430.26.run
安装成功后打开图形界面
sudo service lightdm start
可能要重启才能看到效果。
查看驱动信息
nvidia-smi
理论上最新的驱动,显示的版本型号应该都是400+,cuda10.0+。
使用conda安装环境
对于个人开发者而已,这里已经到了最后一步了。
目前网上大部分的流程是安装cuda和cudnn这两个。 但是如果是个人开发使用,完全不必。
用conda创建对应环境。这一步不会的网上教程一大堆。
# 安装pytorch
conda install pytorch-gpu
# 安装tf
conda install tensorflow-gpu
结束。
这两种方式会直接安装最新的,但如果cuda版本不支持的话,需要去官网查看一下,安装对应的cuda版本。
如果不用conda的话,个人认为直接 pip install xxx-gpu理论上也可以。
按部就班安装的话后面也太多坑。
deepin的gcc是6.0,安装cuda9.0的话不需要降级。
剩下的基本就是下载对应版本的内容,安装就可以。