(可能已失效)[stable-diffusion] RX580用户看过来,教你开启ROCm,加速Ai出图
91824123
编辑于 2023年03月23日 06:03

由于ROCm更新到了 5.4.1,该教程已经失效了。有需要的小伙伴可以试试把5.3的字改成相应的5.4.1试试。

TIP:

目前已有小伙伴测试,PCIE 2.0的平台过于老旧,不支持某些PCIE的特性,可能无法支持ROCm,有能力的小伙伴可能自己试试。

一、作者的一些碎碎念

    本人没有测试过在虚拟机或者WSL中安装并启用ROCm!!!

    本人没有测试过在虚拟机或者WSL中安装并启用ROCm!!!

    本人没有测试过在虚拟机或者WSL中安装并启用ROCm!!!

    随着系统和软件的更新,这篇专栏可能会失效。。。先看完再操作,先看完再操作,先看完再操作,重要的事情要说三遍。。。

    我先在前面要啰嗦几句,你需要懂得ubuntu系统的安装和使用。如果不会,就只能退出这篇专栏了。。我的技术和能力有限,没有办法做到回复所有人,希望能到看这篇专栏的用户可以互相帮助。本篇专栏希望能做到抛砖引玉的作用,希望B站未来能出现更好的教程出来。如果文章出现了错误和瑕疵,请与我联系,谢谢。rx5000系列和rx6000系列的用户不用看了,不用这么麻烦。可以参考下面这几个视频

本次教程的软硬件配置如下

  •   CPU:5600X

  •   GPU:RX580 8G

  •   ROCm版本:5.3.0

  •   操作系统: ubuntu 20.04.5 LTS(物理机直接安装,安装完成后未更新系统,up自己没有亲自测试过Ubuntu 22.04)PS:经评论区的小伙伴测试,22.04不行。

  •   网络: 有可能需要特殊的上网技巧

    我是使用物理机安装ubuntu系统的,没有测试过在虚拟机中安装并启用ROCm,有能力的小伙伴可以试一下。

    中间踩了很多坑,搜了很多文章,解决之后就找不到源文章的地址了,希望相关文章的作者请见谅。如有侵权请联系我。

    以空行为界。并在一起的一坨命令可以一次复制然后粘贴到终端上去。如果没有空行可以一次直接复制完全部代码块再粘贴上去。

二、安装rocm和显卡驱动。

    改源,不多说了,我用的是华为的源。

更新源

然后打开终端

代码块
Shell
自动换行
复制代码
wget -q -O - https://repo.radeon.com/rocm/rocm.gpg.key | sudo apt-key add -
echo 'deb [arch=amd64] https://repo.radeon.com/amdgpu/latest/ubuntu focal main' | sudo tee /etc/apt/sources.list.d/amdgpu.list
echo 'deb [arch=amd64] https://repo.radeon.com/rocm/apt/5.3 focal main' | sudo tee /etc/apt/sources.list.d/rocm.list
echo -e 'Package: *\nPin: release o=repo.radeon.com\nPin-Priority: 600' | sudo tee /etc/apt/preferences.d/rocm-pin-600
# 可以一次性复制这几行命令。
复制成功

代码块
Shell
自动换行
复制代码
sudo apt update
sudo apt install libnuma-dev rocm-dkms amdgpu-dkms
# 可以一次性复制这几行命令。
复制成功

  安装过程会比较久,如果网络不好的同学自己想办法。

输入 y 继续

代码块
Shell
自动换行
复制代码
sudo usermod -a -G video $LOGNAME
sudo usermod -a -G render $LOGNAME

echo 'export PATH=$PATH:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin:/opt/rocm-5.3.0/bin:/opt/rocm-5.3.0/opencl/bin' | sudo tee -a /etc/profile.d/rocm.sh
echo -e 'export LD_LIBRARY_PATH=/opt/rocm-5.3.0/lib:/opt/rocm-5.3.0/lib64' >> ~/.bashrc

sudo ldconfig
/opt/rocm-5.3.0/bin/rocminfo  # 会出现红色提示,这里不用管他
/opt/rocm-5.3.0/opencl/bin/clinfo

# 分3次性复制这几行命令。
复制成功

出现红色提示,正常现象

代码块
Shell
自动换行
复制代码
sudo reboot
复制成功

重启完成后,输入

代码块
Shell
自动换行
复制代码
rocminfo
复制成功

红色的错误提示出现变化

三、安装rocm的一些组件和pip组件包

# 前往github下载下图中的5个文件(2个.deb,3个.whl),https://github.com/xuhuisheng/rocm-gfx803

下载项,全部都丢桌面上

使用ls可以看到这5个包

代码块
Shell
自动换行
复制代码
sudo apt install python3 python3-pip python3-venv rocm-libs miopen-hip rccl libtinfo5 libopenmpi3 libopenblas-dev

mkdir -p ~/.pip/
echo -e '
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn' > ~/.pip/pip.conf


# 切换到浏览器下载文件的目录。如果不会操作或者不知道目录,就把从github上的5个包下载丢到桌面上,再右键打开终端。
sudo dpkg -i hsa-rocr_1.7.0.50300-63.20.04_amd64.deb
sudo dpkg -i rocblas_2.45.0.50300-63.20.04_amd64.deb
pip3 install torch-1.11.0a0+git503a092-cp38-cp38-linux_x86_64.whl
pip3 install torchvision-0.12.0a0+2662797-cp38-cp38-linux_x86_64.whl
pip3 install tensorflow_rocm-2.8.0-cp38-cp38-linux_x86_64.whl

sudo ln -s /opt/rocm-5.3.0/lib/libroctx64.so.4.1.0 /opt/rocm-5.3.0/lib/libroctx64.so.1
sudo ln -s /opt/rocm-5.3.0/lib/libroctracer64.so.4.1.0 /opt/rocm-5.3.0/lib/libroctracer64.so.1

# 一坨一坨地复制
复制成功

安装完成

    至此,所有的步骤均已完成。

cuda可用,并且info信息已经出现

  安装结束,可以运行stable-diffusion程序了。可以参考别人的文章来进行安装与配置,或者下载懒人包。

  注意,有一个坑点,stable-diffusion在某些情况下有可能会出现报错并退出,可以尝试在后面加上 --disable-safe-unpickle,如下

代码块
Shell
自动换行
复制代码
python3 webui.py --disable-safe-unpickle
复制成功

  感谢各位小伙伴提供的帮助,感谢 连山木水 这位小伙伴提供的地址。如果有成功的帮到你,记得回来回复一下,谢谢!!