3 ms·
Let me check my Portainer. Here is a pretty out-of-the-box ready to run container that provides a web interface: https://github.com/l1na-forever/stable-diffusi
by ddtaylor 3y ago
Let me check my Portainer. Here is a pretty out-of-the-box ready to run container that provides a web interface:
https://github.com/l1na-forever/stable-diffusion-rocm-docker https://github.com/l1na-forever/stable-diffusion-rocm-docker
You may have to do a few slight things to give the docker container access to your GPU. On Fedora Linux I have these packages installed related to ROCm:
$ dnf list --installed | grep -i rocm
rocm-smi.x86_64 5.7.1-1.fc39 @updates
That's so I can run `watch rocm-smi` to see GPU utilization. Most of the ROCm stuff "just works" in the kernel now. They went through some time where there were "extra" drivers or "pro" drivers you would need to add to the kernel for some of it, but for the most part with recent-ish kernels you don't have to do a lot of custom ROCm stuff on the host machine.
And you'll see in the `Dockerfile` here the change that was mae was basically this:
FROM rocm/pytorch:latest
Which is a docker container that AMD makes that provides a basic Pytorch environment based on Ubuntu. They provide a few different flavors of the container for different versions of various libraries and distro.
Let me know if you want any help.
EDIT - The last important bit of hidden information is you MAY need to set an environment variable based on which card you have. Some of the consumer cards are essentially the same as their data center cards, but they don't use the same internal names. For that reason you may have to have an environment variable like:
HSA_OVERRIDE_GFX_VERSION=10.3.4
You can add that environment variable to the docker container, probably easiest using `docker-compose.yml` The exact numbers used vary by card and AMD provides a lookup table. I tried to find the table but it gave a 404 because URL changed, but you'll find a decent amount of forum posts on AMD encouraging them to go on GitHub and likewise you'll find a lot of AMD employees on GitHub willing to help. And they help with "unsupported cards" too like the AMD Radeon 6700 XT.
- ilaksh 3y agoGotcha. Thanks for the details. You are talking about a fork of the Automatic1111 SD Web UI for AMD then. The reason I asked is because there are other popular ways to use Stable Diffusion like stablediffusion.cpp, ComfyUI, running the raw Python scripts, and solutions built in Rust on candle.
- ddtaylor 3y agoI haven't messed with much of those alternative ways yet. I run Tensorflow directly with Python, but on my host system I don't care to setup all the packages and stuff needed because it will continue to get updated all the time even when I'm potentially going weeks between using it. All of these packages have large firmware blobs in them and anytime a single card or something changes it wants to pull in a lot of updates.