最近准备在全新安装的Ubuntu 22.04上安装使用英伟达显卡的Pytorch GPU版,但是翻了一下目前网上还时很缺少对应的完整教程,于是想着把自己的安装过程发一下共大家参考.
安装Nvidia私有驱动
要使用PyTorch GPU版就必须有CUDA相关的驱动和库才行,由于UBUNTU 22.04安装好以后默认使用的是nouveau的开源驱动,因此需要先安装Nvidia的开源驱动.最方便的方法是打开下图所示的Additional Drivers应用程序
然后选择最新的Nvidia驱动即可,我安装的是510版本
选择好想要安装的驱动版本,点击Apply Changes并且在安装好后重启电脑即可.
安装CUDA Toolkit 11.7
在Nvidia 官网CUDA Toolkit下载页面 按照如下方式选择对应的版本下载即可,推荐使用runfile(local)的方式进行下载和安装,这样可以节省操作步骤:
需要注意的是虽然网站给出了下载和安装的命令,但是新安装的UBUNTU是不带gcc等编译工具的,需要使用下面的命令先安装常用编译工具,防止后续步骤找不到gcc出错.
1 | sudo apt install build-essential pkg-config cmake cmake-qt-gui ninja-build valgrind |
安装完常用编译工具后按照网站提示的命令进行下载和安装
1 | wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run |
由于我们上一步已经安装了显卡驱动,因此在提示检测到已安装驱动的页面直接点击Continue继续即可.需要注意的是,由于我们已经安装了驱动,因此就不要选择再安装这文件中代的515版驱动,否则会出错. 直接将驱动打叉然后Install安装即可.
这时你使用nvcc --version
的命令来确认CUDA Toolkit是否安装成功的话会发现找不到对应的命令,还需要按照安装好后弹出的提示将将对应的环境变量添加到.bashrc文件.
1 | cd ~ |
在.bashrc文件末加入下面两行后重启terminal即可.可以使用前面提到的nvcc --version
命令来确认设置是否成功.
1 | export PATH=/usr/local/cuda-11.7/bin:$PATH |
安装cuDNN 8.4
cuDNN也是到Nvidia官网cuDNN下载页面进行下载即可,由于NVidia的限制,cuDNN下载前要自己注册一个Nvidia的账号并且填写一些问卷调查,弄好以后我们同样按照安装CUDA的方式进行安装,下载下图所示的版本.
![image-20220622201028652](/Users/taoye/Library/Application Support/typora-user-images/image-20220622201028652.png)
以上的文件需要使用浏览器直接下载,如果复制链接并使用wget下载会因为没有token导致下载失败.下载好就可以根据以下步骤进行安装:
解压缩
1
tar -xvf cudnn-linux-x86_64-8.4.1.50_cuda11.6-archive.tar.xz
将解压缩后的文件分别复制到对应的cuda文件夹下
1
2
3sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include
sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
按照上面的两个步骤就已经安装好了cuDNN,如果还希望进行测试是否安装成功的话可以用官方的sample进行测试.
安装PyTorch 1.11 stable版
进入PyTorch官方安装页面,按照下图所示的方式选择即可,由于我们前面安装的是CUDA11.7,这里直接选CUDA 11.3即可正常使用.
我们这里使用pip安装,直接运行页面提示的命令进行安装即可
1 | pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113 |
如果提示你没有pip3的话可以通过下面的命令先安装pip,在运行前面的命令安装pytorch.
1 | sudo apt install python3-pip |
到这里pytorch的GPU版就安装成功了,如果想要测试可以在python环境下通过下面的程序进行判断,如果返回值为True则代表GPU加速启用成功.
1 | import torch |