WSL2 Ubuntu22.04 + 3070安装cuda11.6 +Pytorch1.13.0全纪录
时间:2024-04-16 15:25:31 来源:网络cs 作者:璐璐 栏目:广告工具 阅读:
文章目录
安装cuda查看支持的最大cuda版本根据官网步骤安装安装完成后的善后 安装cudnn安装Pytorch安装miniconda管理python环境在torch_env中安装Pytorch 结果检查gpustat
安装cuda
提前说明:WSL的发行版如果是Ubuntu22.04,我安装过程中出现了一个错误,不过也解决了。我搜的其他方法说直接用Ubuntu20.04不回出现这个问题,如果愿意的话,可以选择重装Ubuntu20.04。
查看支持的最大cuda版本
首先通过nvidia-smi
命令查看当前安装的驱动支持的最大cuda版本:
可以看到这里最大支持的是12.3。不过之前实验都是在11.6上做的,所以这里就安装cuda11.6。
根据官网步骤安装
进入cuda11.6的官网并按顺序选择:cuda11.6→Linux→x86-64→WSL-Ubuntu→2.0→deb_local
然后会出现官方给的安装流程,比如:
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pinsudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda-repo-wsl-ubuntu-11-6-local_11.6.0-1_amd64.debsudo dpkg -i cuda-repo-wsl-ubuntu-11-6-local_11.6.0-1_amd64.debsudo apt-key add /var/cuda-repo-wsl-ubuntu-11-6-local/7fa2af80.pubsudo apt-get updatesudo apt-get -y install cuda
我们可以在任意路径下操作上面的内容,最后cuda-repo-wsl-ubuntu-11-6-local_11.6.0-1_amd64.deb
这个安装包也会下载到这个目录,安装完可以选择删掉。我这里直接在自己的home目录下创建了个for_cuda
目录来操作。
按照上面顺序执行即可。其中:
sudo apt-key add /var/cuda-repo-wsl-ubuntu-11-6-local/7fa2af80.pub
会有警告可以忽略。
主要是最后一句sudo apt-get -y install cuda
报错了:
The following packages have unmet dependencies: libcufile-11-6 : Depends: liburcu6 but it is not installableE: Unable to correct problems, you have held broken packages.
查了下似乎是因为Ubuntu22.04默认没有liburcu6了。搜到的一个解决方案是:
Unable to install CUDA on Ubuntu 22.04 WSL2中的:
# ppa:cloudhan/liburcu6 provides a forward-port of liburcu6 for Ubuntu 22.04.sudo add-apt-repository ppa:cloudhan/liburcu6sudo apt updatesudo apt install liburcu6
按照上面的顺序先添加ppa:cloudhan/liburcu6
源,更新后可以安装liburcu6了。(似乎需要开梯子才能顺利添加ppa源并更新)
最后重新执行sudo apt-get -y install cuda
即可
安装完成后的善后
cuda默认安装在/usr/loacl/
下:
cuda和cuda-11都可以理解为cuda-11.6的快捷方式。文件都在cuda-11.6里。看下目录结构:
有bin,有lib和include(后面cudnn要拷贝到这俩里面)
现在就可以进到bin里面执行./nvcc -V
查看版本:
说明安装成功。
下面就是添加环境变量(只是通过python去使用cuda的话,不添加也行):
在home的.bashrc文件内添加以下内容:
export CUDA_HOME=/usr/local/cuda-11.6 # 新建环境变量CUDA_HOMEexport PATH=$PATH:$CUDA_HOME/bin # 将bin目录添加到PATH这个环境变量export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA_HOME/lib64export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA_HOME/extras/CUPTI/lib64# 后两个是添加一些库的路径到LD_LIBRARY_PATH环境变量中,参考别的教程的
之后打开bash终端能直接用bin下的命令了。如果使用的是zsh终端,在对应的.zshrc
文件中配置。
安装cudnn
cudnn只是一些库,用来加速计算的好像。需要从官网下载:
cudnn下载
下载需要注册一个NVIDIA账号。
这里下的是8.9.5。下载完成后,通过以下命令解压:
tar -xvf cudnn-linux-x86_64-8.9.5.30_cuda11-archive.tar.xz
(压缩包换成自己的压缩包)
之后进入到解压文件夹里将解压后的lib和include的内容复制到cuda里面对应的lib64和include目录里面:
cd cudnn-linux-x86_64-8.9.5.30_cuda11-archive # 目录也是自己解压后的目录cp ./lib/* /usr/local/cuda-11.6/lib64 # 拷贝libcp ./include/* /usr/local/cuda-11.6/include # 拷贝头文件
*
为通配符,表示“所有”
安装Pytorch
这里推荐使用conda管理python环境
安装miniconda管理python环境
miniconda相对于anaconda更精简。
官网:miniconda
按照提供的安装顺序安装:
mkdir -p ~/miniconda3wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.shbash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3rm -rf ~/miniconda3/miniconda.sh
安装完成后还需要为bash初始化:
~/miniconda3/bin/conda init bash~/miniconda3/bin/conda init zsh # 如果用的zsh可以用这句为zsh初始化
之后可以打开一个bash,可以看到前面默认有个(base)。这是conda默认的python环境:
可以通过以下命令创建环境并指定python版本
conda create --name torch_env python=3.7
创建了一个名为torch_env,python为3.7的环境。
之后可以通过conda activate [环境名]
切换不同的环境,并且命令提示符前面也会变成对应的环境名:
在torch_env中安装Pytorch
到Pytorch官网:pytorch。默认提供的是最新的。可以在install previous versions of PyTorch
中安装其他版本:
我这里安装的是1.13.0的版本,根据它提供的命令来安装就行。在上面创建的torch_env环境中安装。
pip install torch==1.13.0+cu116 torchvision==0.14.0+cu116 torchaudio==0.13.0 --extra-index-url https://download.pytorch.org/whl/cu116
下载安装可能会报超时错误。添加--default-timeout=6000
来超时设定时间(单位是秒)
其他错误就再搜搜吧。
结果检查
安装完成后,在python里看看能不能用
完成!
gpustat
nvidia-smi查看占用啥的太丑陋了,还可以使用gpustat。它是一个python模块,直接通过pip install gpustat
就能安装。
安装完成后效果:
运行gpustat
或gpustat -i
可以查看gpu状态,-i
表示动态查看。
本文链接:https://www.kjpai.cn/news/2024-04-16/159498.html,文章来源:网络cs,作者:璐璐,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!