https://bugs.winehq.org/show_bug.cgi?id=46056
johnstonljordan@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |johnstonljordan@gmail.com
--- Comment #3 from johnstonljordan@gmail.com --- @ajduck
ni idea if you still watch this bug - but I have multi-core mode working with U-He VST plugins just fine. (in my own wine-fork)
ref: https://github.com/nine7nine/Wine-NSPA
It requires a lot of out-of-tree code to fix this problem. As you suspect, Wineserver is part of the problem (it being single-threaded). It simply cannot handle getting hammered by calls from Diva's worker threads in multi-core mode. it will stall, big time...
but the problem is larger than that. You need to be using Fsync (From Proton) to help fix the synchronization issues in Wine... You also need all of the relevant threads in Wine to be RT, AND have a multi-threaded winerserver implementation (with it's threads all run at high RT priority)...
After all of this, Diva will run incredibly well, but there are still some issues with particular presets + high CPU usage (as happens with some other VSTs too). I think this has more to do with heap performance and locking issues in Wine though, although I'm not positive... the LFH patchwork help somewhat (Low Fragmentation Help).
I don't see Vanilla-Wine being able to support this any time soon, and even something like Proton or Wine-TKG isn't going to support it either (although they get you part way there, for sure)...
runnning proaudio apps in Wine has always been problematic.