最近发现在笔记本上用 cpu 来训练模型效率还是太慢了,正好我笔记本上有一块 nvidia gpu,准备折腾一下把这块 gpu 用起来
由于在笔记本环境下安装 gpu 开发环境比较痛苦,虽然最终失败了,但是过程比较有意义,值得备忘一下
我的开发环境主要是 pytorch + cuda
硬件环境就是 thinkpad w530 + 32g + K1000M
由于笔记本的 gpu 通常型号比较老,并不是大部分的 pytorch 都支持
1. 安装 cuda
网上有很多资料,怎么安装 nvidia-cuda-toolkit 的,apt install nvidia-cuda-toolkit 就可以直接装
但是我发现装完了之后没法用,pytorch 没法检测到 cuda 环境。这两个东西不完全是一个东西,有挺多差异的。
python3 -c ‘import torch; print(torch.cuda.is_available())’ 必须返回 true
最后用官方的安装方法成功了
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda-repo-ubuntu2004-11-7-local_11.7.0-515.43.04-1_amd64.deb sudo dpkg -i cuda-repo-ubuntu2004-11-7-local_11.7.0-515.43.04-1_amd64.deb sudo cp /var/cuda-repo-ubuntu2004-11-7-local/cuda-*-keyring.gpg /usr/share/keyrings/ sudo apt-get update sudo apt-get -y install cuda
2. 安装 nvidia-driver
ubuntu 默认源里面会有一些基本的 nvidia-driver
ubuntu-drivers devices 可以看到
# ubuntu-drivers devices == /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 == modalias : pci:v000010DEd00000FFCsv000017AAsd000021F5bc03sc00i00 vendor : NVIDIA Corporation model : GK107GLM [Quadro K1000M] manual_install: True driver : nvidia-driver-390 - distro non-free driver : nvidia-340 - distro non-free recommended driver : nvidia-driver-418-server - distro non-free driver : xserver-xorg-video-nouveau - distro free builtin
这里面会推荐你使用 nvidia-340
但是我的实际测试来看,nvidia-340是没法用的,安装完了之后显示器各种异常,最后安装到 nvidia-driver-390 解决了显示器异常的问题
但是nvidia-driver-390 版本太低,cuda 现在依赖的 nvidia-driver 版本都是470以上了,所以光有 nvidia-driver 是不行的,必须和 cuda 配套。
最终在安装 cuda 的时候会自动安装 nvidia-driver 配套驱动,其实不用自己搞
安装完,需要重启机器,重启后 nvidia-smi 检查能不能看到显卡信息