机器学习----- pytorch的安装过程
- 最近,在学习机器学习,在对于理论方面进行一段时间的学习后,打算开始上手代码。在此之前,选择了
pytorch
作为学习的工具,这里记录下安装的过程。 - 在这里,先把我的设备展示一下,我这里使用的还是windows 11的系统,搭建了一个基于windows的
WSL-Ubuntu系统
,ubuntu的版本为22.04
,CPU为i7-12700
,
GPU为rtx 3060ti
,kernel为x86_64
, 已经提前安装完成了anaconda软件
,具体情况如下所示:
打开pytorch的官网:官网地址,向下拖动可以看见:
这里可以根据你的需求进行挑选,我这里选择Linux系统
,和cuda11.6
.
因为想要使用GPU,所以需要先安装Cuda
和Cudnn
,在安装cuda和cudnn的版本之前,先要确认一下你的显卡(我这里是3060ti)最低兼容的版本。
遇事不决,先问一下AI:
- 我这里暂时没有考虑到学习框架的事儿,就是熟悉一下安装流程,所以我选用最新的cuda版本进行安装
cuda的安装
打开cuda的 下载界面:cuda
- 选择,最新的版本
cuda-12
这里,根据自己的具体系统环境进行选择
选择完之后会得到:
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.0.1/local_installers/cuda-repo-wsl-ubuntu-12-0-local_12.0.1-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-12-0-local_12.0.1-1_amd64.deb
sudo cp /var/cuda-repo-wsl-ubuntu-12-0-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda
然后,在你的终端输入上面的代码,等待运行完成。完成之后,需要配置一下环境。注意,我这里是将bashrc换为了zshrc
,大家根据自己的进行修改:
sudo vi ~/.zshrc
在文本最后面加入:
export PATH=/usr/local/cuda-12.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-12.0/lib64
重新加载环境以及动态链:
source ~/.zshrc
sudo ldconfig
检查是否安装成功:
nvcc -V
这样子就是搞定了
安装cudnn
前往官网下载:cudnn
- 这个网址貌似需要注册一下,这个是小问题
点击,然后:
这里我选择了11.x
的版本,为什么没有选择12与cuda进行对应呢。因为当时看错了,等我发现的时候已经进行安装了。
选择这个,可以通过 wget 命令下载到服务器上:
wget https://developer.nvidia.com/downloads/c118-cudnn-linux-8664-880121cuda11-archivetarz
但是由于文件好像比较大,容易卡。我后来是先下载到本地,然后再传到服务器上的。
打开终端,进入 cuDNN 压缩包所在的文件夹,执行以下命令:
tar -xzvf cudnn-xx.x-linux-x64-v8.x.x.x.tgz
其中,xx.x 是 CUDA 的版本,v8.x.x.x 是 cuDNN 的版本。例如,如果安装的是 CUDA 12.0,cuDNN 的版本是 v8.1.1,则执行以下命令:
tar -xzvf cudnn-12.0-linux-x64-v8.1.1.33.tgz
将解压后的文件夹拷贝到 CUDA 的安装路径下的相应文件夹中,通常为 “/usr/local/cuda-xx.x”,其中 xx.x 是 CUDA 的版本。
例如,如果安装的是 CUDA 12.0
,则执行以下命令.注意,如果你是其他的版本,就把12.0对应修改
:
sudo cp cuda/include/cudnn*.h /usr/local/cuda-12.0/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-12.0/lib64
sudo chmod a+r /usr/local/cuda-12.0/include/cudnn*.h /usr/local/cuda-12.0/lib64/libcudnn*
添加环境变量。打开终端,执行以下命令:
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.0/lib64:$LD_LIBRARY_PATH' >> ~/.zshrc
source ~/.zshrc
最后,可以通过执行以下命令来验证 cuDNN 是否安装成功:
cat /usr/local/cuda-12.0/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
如果成功安装,应该能够看到类似下面的输出:
#define CUDNN_MAJOR 8
#define CUDNN_MINOR 1
#define CUDNN_PATCHLEVEL 1
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
以上是在 Ubuntu 22.04 上安装符合 CUDA 12 的版本的 cuDNN 的步骤。在安装 cuDNN 之前,请确保已经正确安装了对应版本的 CUDA。
完成以上两步骤之后,就搞定了90%了。
下面,就是在anaconda下,创建一下新的环境,命名为pytorch:
conda create -n pytorch python=3.9.0
然后,回到之前pytorch的官网,选择对应的需求:
激活环境后,运行上述红框中的命令:
conda activate pytorch
conda install pytorch torchvision torchaudio pytorch-cuda=11.6 -c pytorch -c nvidia
等待安装完成,然后验证是否成功:
命令行输入:python
import torch
torch.cuda.is_available()
安装完成,大功告成~~~
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html
https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html
https://pytorch.org/