AMD 显卡笔记本windows11满血玩转Stable Diffusion

电脑配置:

AMD Ryzen R7 6800H,16G内存,核显Radeon 680M,共享内存8G。

测试了direct-ml版,还是zluda版本速度快,大概是direct-ml版本的5倍以上。以下正文。

一,安装 AMD HIP SDK

HIP
HIP(Heterogeneous-Compute Interface for Portability)是AMD开发的一种GPU编程模型,旨在实现GPU代码的可移植性。
AI应用里,N卡几乎可以说一统江湖,N卡的GPU是运行在CUDA平台上的。
HIP 可以说是 CUDA API 的”山寨克隆“版,几乎全盘拷贝 CUDA API,是 CUDA 的一个子集。
HIP可以运行在ROCm平台,也可以运行在CUDA平台(即可以运行在A卡,也可以运行在N卡上)。

ROCm介绍
ROCm是AMD的开源GPU计算软件堆栈,旨在提供一个可移植、高性能的GPU计算平台。
ROCm支持AMD的GPU和APU,以及x86和ARM架构的处理器,提供了与CUDA相似的编程模型,使得在AMD GPU上编写和运行GPU计算应用程序变得更加容易。

A卡上编程模型使用的是HIP或者OpenCL,而运行环境是ROCm
N卡上,编程模型是CUDA,运行环境也是CUDA

下载页面
https://www.amd.com/en/developer/resources/rocm-hub/hip-sdk.html

下载链接。要下载HIP 5.7.1版本,(安装界面看起来还是5.7)。只有这个版本的ZLUDA支持AMD Radeon 680M。780M的就可以用6.1了。
https://download.amd.com/developer/eula/rocm-hub/AMD-Software-PRO-Edition-23.Q4-Win10-Win11-For-HIP.exe

【ZLUDA】
注意,ZLUDA不完全支持pytorch,并且可能会有不稳定的现象。
这里是原版,3.7.2还是支持ROCm5的:
https://github.com/lshqqytiger/ZLUDA/releases
https://github.com/lshqqytiger/ZLUDA/releases/download/rel.4f12e8cfe9fa53bd29637c0bfe6fc88494d2b10f/ZLUDA-windows-amd64.zip

锐龙R7 6800H里内置的核显是AMD Radeon 680M,其架构是gfx1035(R5 6600H也是一样的),所以要下载这两个:
https://github.com/likelovewant/ROCmLibs-for-gfx1103-AMD780M-APU/releases/download/v0.5.7/rocblas.for.gfx1035.AMD.680M.rembrandt.V2.7z
https://github.com/likelovewant/ROCmLibs-for-gfx1103-AMD780M-APU/releases/download/v0.5.7/Rocm.rocblas.HIP5.7.0.V2.7z

其中第一个是只给AMD 680M用的,第二个是给多个AMD显卡用的。使用方法:

找到HIP的安装目录%HIP_PATH%\bin\rocblas,通常是C:\Program Files\AMD\ROCm\5.7\bin,使用压缩包里的rocblas.dll替换掉目录里的同名文件,然后修改同一目录下的library目录名为oldlibrary,再把压缩包里的library目录拷贝过来。如果可能的话,重新启动一下。

二,安装stable-diffusion + webui

【安装git】
git-scm.com/download/win

【安装Python】
www.python.org/downloads/
选择3.10.6~3.10.11版本,安装的时候,一定要勾选,配置环境变量。

【下载工程】
找一个空间足够大的盘,然后创建一个文件夹,比如git,打开cmd窗口
cd git
git clone https://github.com/lshqqytiger/stable-diffusion-webui-amdgpu amdgpu

或国内镜像:
git clone https://gitee.com/ranxv/stable-diffusion-webui-amdgpu.git amdgpu

安装完后,在文件夹amdgpu下,继续打开终端窗口,分别执行以下两个命令

git clone https://github.com/lshqqytiger/k-diffusion-directml repositories/k-diffusion
git clone https://github.com/stability-AI/stablediffusion repositoriesable-diffusion-stability-ai

【安装torch】
进入venv,安装
pip install torch==2.2.1+cu118 torchvision==0.17.1+cu118 --index-url https://download.pytorch.org/whl/cu118
或修改requirements,不要用默认的torch和torchvision,也不要用cuda12版本(cu121),会崩溃。

如果之后不小心安装了torch的其它版本,也可以像上面一样换回来。

【修改配置】

找到stable-diffusion-webui-amdgpu\webui-user.bat文件,然后用记事本打开,添加属性:
set PYTORCH_CUDA_ALLOC_CONF=garbage_collection_threshold:0.9,max_split_size_mb:512
set COMMANDLINE_ARGS=--precision full --disable-nan-check --upcast-sampling --opt-sub-quad-attention --medvram --use-zluda

【最后一步】
在stable-diffusion-webui-amdgpu文件夹下找到webui-user.bat文件,然后双击执行。

这里第一次运行要等zluda自己配置很久,而且没有进度条,所以别着急。即便

http://127.0.0.1:7860/

的页面打开后,还要等上10分钟(我这里加载模型就用了614秒),但只有第一遍慢,别着急。

等页面加载完,生个图试试吧!13.15it/s的速度,还可以吧?

这里面最关键的是ROCm能否识别GPU,因为官方驱动是不支持gfx1035的。看到下面的ROCm: agents=['gfx1035']就是成功了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值