Ubuntu 20.04下,A卡使用stable diffusion webui画图

发布时间 2023-05-28 11:38:18作者: lzhshn

一、安装AMD驱动

下载AMD驱动安装器(以RX6650XT为例):https://www.amd.com/zh-hans/support/graphics/amd-radeon-rx-6000-series/amd-radeon-rx-6600-series/amd-radeon-rx-6650-xt

使用sudo dpkg -i amd* 安装

然后运行:amdgpu-install -y --usecase=graphics --no-dkms

-y,非交互式,直接安装
--usecase=graphics,安装普通版本驱动即可
--no-dkms,不要安装内核,和linux内核冲突,并且,提示很多Possible missing

如果没有在物理机上安装AMD驱动,直接使用Docker里的环境,会出现段错误:

段错误(核心已转储) Segmentation fault (core dumped)


二、Docker相关知识

安装docker:sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

获取ROCM镜像:docker pull rocm/pytorch(rocm、pytorch、miopen都已经配置好了)

不要使用ROCM的操作说明:https://hub.docker.com/r/rocm/pytorch/#!
直接使用automatic1111的说明:https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Install-and-Run-on-AMD-GPUs
创建容器:docker run -it --network=host --device=/dev/kfd --device=/dev/dri --group-add=video --ipc=host --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v $HOME/dockerx:/dockerx rocm/pytorch

 

查看镜像:docker images
删除镜像:docker rmi

查看容器:docker ps -a(没有-a只看正在运行的容器,-a表示查看所有容器)
开关容器:docker start/stop adoring_vaughan
进入容器:docker exec -it adoring_vaughan /bin/bash
删除容器:docker rm -f

删除容器文件夹:sudo rm -rf

挂载目录:docker run -it -v :


三、测试torch对ROCM的调用
python3
import torch
torch.cuda.is_available()
设置为GTX1030,然后重新测试
HSA_OVERRIDE_GFX_VERSION=10.3.0 python3

 

四、Python相关设置

修改pypi源:pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

升级pip:python -m pip install --upgrade pip wheel
可能需要手动安装的:gfpgan,clip,open_clip(如果能自动安装,就不用手动了)