That is a First for me! Keeping Windows AI components makes Stable Diffusion crash

PhsMu

Active Member
Messages
286
Reaction score
85
Ok, so I have a small component report to make nuhi, but not in the way one would normally expect:

So, the problematic components are

Drivers
> Neural Processors
>> VCA.inf (Virtual Compute Accelerators)
System
> Windows AI Machine Learning
>> Direct Machine Learning (DirectML)

cause a bug in Stable-Diffusion-based image generators, which makes python.exe crash whenever you change models after generating anything (so if you start up the AI but change models without generating anything it works fine) on hybrid graphics setup (which one would want, so that ALL the VRAM is available to the AI while the iGPU handles the desktop). The CATCH is that the problem happens when the components are PRESENT, but REMOVING THEM SOLVES THE PROBLEM.

This was tested on a Ryzen 7600 with a Geforce 3060, and fresh installations of Stable Diffusion, Forge (Latest), Forge (Legacy), and Classic-Forge (a different project with a similar name).

I'm not sure how you'd add these to the description, but to me, it seems like the DirectML drivers are trying to direct the workflow to the iGPU, which makes CUDA... unhappy.
 
Thank you for this info, will remember it.
Do let me know if you have ideas how to better group or name those AI components, they are new and I don't know if some AI Agent or something actually needs them.
 
Thank you for this info, will remember it.
Do let me know if you have ideas how to better group or name those AI components, they are new and I don't know if some AI Agent or something actually needs them.
The names are fine, actually. Virtual Compute Accelerators are nonsense that has no use right now, much like NPUs (only copilot really uses those and if we consumers had it our way, Copilot wouldn't even exist). DirectML is just an translator layer, really, to put it simply, it converts all other sets of instructions to a common language only a select few AIs can use (and only when CUDA is unavailable), so its not of much use (if you're on AMD or Intel and are already losing % for translation layers, just use ZLUDA, it's better and free, and you'll be outputting to CUDA).

I had those left behind when I wanted to test something on a relatively powerful APU (R7 7840u), using a compatible version of Stable Diffusion, but it did more harm than good (it was converting models into DML even when I sent them into a CUDA device, causing errors and going out of memory when the device tried to re-convert them), so I thought to spare everyone the same grief.
 
Back
Top