4 ms·
> Nothing actually works on non-NVidia hardware. "Actually works" is different from "theoretically works." A lot of what I use theoretically supports ROCm, but
by HansHamster 4y ago
> Nothing actually works on non-NVidia hardware. "Actually works" is different from "theoretically works." A lot of what I use theoretically supports ROCm, but in practice, when you try to use it, you have enough bugs big and small, and things crash or don't work right.
I was surprised when I started playing around with Stable Diffusion a couple of weeks ago and it just kind of worked with ROCm. That being said, I did run into a couple of very annoying issues... almost running out of VRAM seems to trigger GPU timeouts but as far as I can tell the GPU itself is fine and the memory allocation crawled to a halt. This also seems to be much more likely when running at half precision, which is a shame given that the relatively large 16GB VRAM effectively gets cut in half when running at full precision...
But this is already a big improvement over "ROCm doesn't support RDNA2" [0] which was still the case ~1.5 years ago. I just really hope that AMD keeps up the effort and fixes all the small and big issues that are still around...
[0]: https://github.com/RadeonOpenCompute/ROCm/issues/1180 https://github.com/RadeonOpenCompute/ROCm/issues/1180
- blagie 4y ago> I was surprised when I started playing around with Stable Diffusion a couple of weeks ago and it just kind of worked with ROCm. Stable Diffusion is literally the single highest-profile application of machine learning. There has been extensive effort to make it work in all sorts of places. If it were the year 2000, someone would port it to a Beowulf cluster... I'm more concerned about SpaCy, CuPy, the hundreds (thousands) of models on Hugging Face, etc. I do use a lot of that stuff. Buying a GPU or accelerator which only runs the high-profile stuff is a bad buy.
- HansHamster 4y agoThe other models on Hugging Face I tried also worked fine... I'm not saying that everything is running perfectly or even that buying an AMD card for compute is a good idea at the moment, but there has been quite some progress even compared to 2-3 years ago so I'm cautiously optimistic... I still remember trying to train a model with TensorFlow on AMD maybe 2 years ago. The only option was OpenCL and it was disappointingly slow (and barely any load on the GPU) and in the end I switched back to my old 1060 which worked much better.
- Scaevolus 4y agoROCm also has significant startup latency, and for Stable Diffusion additional latency compiling the new operations whenever you switch resolutions. I found that running out of memory would lock up my X session, spam kernel logs about GPU ioctls timing out, and require a reboot. That's much less friendly than CUDA reporting an error to the requesting application and carrying on!