AMD显卡在windows中通过WSL安装使用stable diffusion(WebUI和ComfyUI)

确认windows的amd显卡驱动版本,至少不低于24.12.1,具体可以查看对应

一、安装wsl和ubuntu。

1.安装wsl2:

复制代码
wsl --install

2.安装ubuntu(24.04、22.04等):

复制代码
wsl.exe --install ubuntu-24.04

3.更改ubuntu安装位置(可选):

复制代码
wsl --manage ubuntu-24.04 --move <location>

4.进入wsl实例:

复制代码
#输入wsl -d <version>进入制定版本或输入wsl进入默认实例
wsl -d ubuntu-24.04

可按Ctrl+D退出当前实例。

关闭实例:

复制代码
wsl --shutdown

检查实例状态:

复制代码
wsl -l -v

二、安装rocm(示例为安装rcom6.3.4)。

1.安装 AMD 统一驱动程序包存储库和安装程序脚本

具体rcom适配情况可查看(https://rocm.docs.amd.com/projects/radeon-ryzen/en/latest/docs/compatibility/compatibilityrad/wsl/wsl_compatibility.html)

注意:ubuntu24.04和ubuntu22.04两者下载的包不一样,ubuntu24.04对应noble,ubuntu22.04对应jammy,具体下载网址为https://repo.radeon.com/amdgpu-install/。

ubuntu24.04:

复制代码
cd
sudo apt update
wget https://repo.radeon.com/amdgpu-install/6.3.4/ubuntu/noble/amdgpu-install_6.3.60304-1_all.deb
sudo apt install ./amdgpu-install_6.3.60304-1_all.deb

ubuntu22.04:

复制代码
cd
sudo apt update
wget https://repo.radeon.com/amdgpu-install/6.3.4/ubuntu/jammy/amdgpu-install_6.3.60304-1_all.deb
sudo apt install ./amdgpu-install_6.3.60304-1_all.deb

2.查看可用用例列表(可选):

复制代码
sudo amdgpu-install --list-usecase

3.安装rcom:

复制代码
sudo amdgpu-install --list-usecase

4.检查rcom安装情况:

复制代码
rocminfo

如果正确显示显卡信息,则安装成功

三、安装conda(可选)

1.安装conda(用于管理Python版本):

复制代码
cd
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash ./Miniconda3-latest-Linux-x86_64.sh

需重启控制台,只需要退出wsl就可以了,按Ctrl+D,然后再启动wsl就可以了

2.创建名为sd的环境,Python版本为3.10(建议webUI和comfyui各自创建一个环境):

复制代码
conda create -n sd python=3.10 -y

3.激活环境sd:

复制代码
conda activate sd

若需要退出当前conda环境:

复制代码
conda deactivate

四、安装pytorch(若没有使用conda,请自行安装python3)

1.下载对应python版本的whl文件:

复制代码
cd
wget https://repo.radeon.com/rocm/manylinux/rocm-rel-6.3.4/torch-2.4.0%2Brocm6.3.4.git7cecbf6d-cp310-cp310-linux_x86_64.whl
wget https://repo.radeon.com/rocm/manylinux/rocm-rel-6.3.4/torchvision-0.19.0%2Brocm6.3.4.gitfab84886-cp310-cp310-linux_x86_64.whl
wget https://repo.radeon.com/rocm/manylinux/rocm-rel-6.3.4/pytorch_triton_rocm-3.0.0%2Brocm6.3.4.git75cc27c2-cp310-cp310-linux_x86_64.whl
wget https://repo.radeon.com/rocm/manylinux/rocm-rel-6.3.4/torchaudio-2.4.0%2Brocm6.3.4.git69d40773-cp310-cp310-linux_x86_64.whl

(根据安装的Python版本确定安装包,安装包的名字中cpxxx为安装python版本,例如cp310对应python3.10版本)

https://repo.radeon.com/rocm/manylinux/

2.安装下载的whl:

复制代码
pip3 uninstall torch torchvision pytorch-triton-rocm
pip3 install torch-2.4.0%2Brocm6.3.4.git7cecbf6d-cp310-cp310-linux_x86_64.whl torchvision-0.19.0%2Brocm6.3.4.gitfab84886-cp310-cp310-linux_x86_64.whl torchaudio-2.4.0%2Brocm6.3.4.git69d40773-cp310-cp310-linux_x86_64.whl pytorch_triton_rocm-3.0.0%2Brocm6.3.4.git75cc27c2-cp310-cp310-linux_x86_64.whl

3.更新 WSL 兼容的运行时库:

复制代码
location=$(pip show torch | grep Location | awk -F ": " '{print $2}')
cd ${location}/torch/lib/
rm libhsa-runtime64.so*

4.libhsa-runtime64.so 至少需要安装 GCC 12.1,conda环境可以升级gcc版本(可选):

复制代码
conda install -c conda-forge gcc=12.1.0

5.验证安装情况:

复制代码
python3 -c 'import torch' 2> /dev/null && echo 'Success' || echo 'Failure'
python3 -c 'import torch; print(torch.cuda.is_available())'
python3 -c "import torch; print(f'device name [0]:', torch.cuda.get_device_name(0))"

输出结果分别为:Success、Ture、显卡型号则安装成功。

验证pytorch环境:

复制代码
python3 -m torch.utils.collect_env

五、安装stable-diffusion-WebUI和ComfyUI

1.安装stable-diffusion-WebUI

(1)克隆Stable Diffusion WebUI到本地并安装依赖:

复制代码
cd
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui
pip install -r requirements.txt

(2)下载汉化包:

复制代码
cd && cd ~/stable-diffusion-webui/extensions
git clone https://github.com/dtlnor/stable-diffusion-webui-localization-zh_CN.git

(3)运行stable-diffusion-WebUI:

复制代码
cd && cd stable-diffusion-webui
python launch.py

2.安装ComfyUI

(1)克隆ComfyUI到本地并安装依赖:

复制代码
cd
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
pip install -r requirements.txt

(2)与stable-diffusion-WebUI共享库(可选):

复制代码
cd ~/ComfyUI
mv extra_model_paths.yaml.example extra_model_paths.yaml
vim extra_model_paths.yaml

在vim中将文件中"base_path: path/to/stable-diffusion-webui/"改为"base_path: /home/用户名/stable-diffusion-webui/"

(3)运行ComfyUI:

复制代码
cd && cd ComfyUI
Python main.py
相关推荐
律宏阔2 小时前
WSL Docker 端口明明空闲,但就是绑不上端口
linux·windows
律宏阔2 小时前
Windows 禁用联想笔记本所有 Lenovo 后台服务
windows
律宏阔2 小时前
WSL 突然断网,无法 ping 内网或外网
linux·windows
穷人小水滴2 小时前
用容器编译 VirtualBox 虚拟机软件 (ArchLinux, podman)
linux·容器·virtualbox
乱码三千3 小时前
如何优雅地直连无公网 IP 的远程 GPU 服务器
linux·人工智能·程序员
yunwei373 小时前
使用 eBPF 跟踪 Nginx 请求
linux·后端·性能优化
yunwei373 小时前
使用 eBPF 跟踪 MySQL 查询
linux·后端·性能优化
yunwei373 小时前
eBPF 示例教程:使用 XDP 捕获 TCP 信息
linux·后端·性能优化
GeW3 小时前
制造业高端化,为什么必须重估Linux和数据库?
linux
GeW3 小时前
工业场景中的Linux与数据库选型:高端化转型的技术底座
linux