WSL2安装pytorch
wsl-ubuntu 安装
1 操作系统,win11
开启CPU虚拟化
如果是关闭状态,需要进入到BOIS 中打开设置。
开启虚拟机平台
搜索栏中搜索功能,即可出现“启用或关闭Windows功能”
升级配置 wsl
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
下载安装
设置默认wsl的版本为2
wsl --set-default-version 2
安装ubuntu
到 Microsoft Store 中搜索linnux,目前基本上都安装的 ubuntu
选择一个版本即可。
安装完毕打开即可。
CUDA 安装
包含2部分,一部分是驱动,一部分是开发SDK。
驱动安装
驱动本身到官网下载最新驱动,安装到 windows
https://www.nvidia.cn/Download/index.aspx?lang=cn
安装完毕后,需要记录驱动版本号
下载安装toolkit
开发sdk,需要下载并安装到 wsl 中的 linux 上
根据上一步驱动安装完毕后,显示的驱动版本,到如下网址找对应的sdk
https://developer.nvidia.com/cuda-toolkit-archive
我的是12.0,所以选择
然后进入后根据具体的情况,选择安装方式,我测试 runfile 没有问题。
如下过程都在wsl 的 linux环境中完成。
sudo sh cuda_12.0.1_525.85.12_linux.run
下载过程会比较慢,3.9G
安装过程,会弹屏,输入 accept 继续安装。
然后回选择安装组件,我的全部选择以后报错,后来按照默认选项可以成功安装。
安装完毕后,到 /usr/local 查看,有cuda-xx 的目录,xx一般是版本号。这个记录下来,需要在下面用到
配置环境变量
vim ~/.bashrc
export PATH=/usr/bin:$PATH
export PATH=/usr/local/cuda-XX/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-XX/lib64:$LD_LIBRARY_PATH
更新环境变量
source ~/.bashrc
执行nvcc,查看安装信息
nvcc -V
如果 nvcc 执行报错,说明安装环境失败,重新安装
安装 pytorch
安装 conda
https://repo.anaconda.com/archive/
找喜欢的版本,
执行下载
wget -P /tmp https://repo.anaconda.com/archive/Anaconda3-2022.05-Linux-x86_64.sh # 下载anaconda安装包至 /tmp 目录下
安装
bash /tmp/Anaconda3-2022.05-Linux-x86_64.sh # 安装anaconda
创建虚拟环境并激活
conda create -n llm python=3.8
激活环境
conda activate llm
安装 pytorch
https://pytorch.org/get-started/locally/
选择对应的版本以及安装方式
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
安装vscode 并测试
下载vscode
https://code.visualstudio.com/
安装完毕,增加组件
wsl
点击出现:
然后安装 python 组件
这些组件默认会安装到wsl 中
编写测试代码,看当前是否安装成功pytorch.
Ctrl+Shift+P,打开vs的命令面板,创建jupyter 测试
输入如下代码,保存点运行
import torch
print('',torch.cuda.is_available())
#check if GPU is availableif
if torch.cuda.is_available():
device = torch.device("cuda")
#set device, we need this later to pu
print(f'There are {torch.cuda.device_count()} GPU(s) available.')
print('Device name:', torch.cuda.get_device_name(0))
else:
print('No GPU available, using the CPU instead.')
device = torch.device("cpu")