The Witcher 3 in Wine
Page: «44/176»
  Go to:
andda715 Nov 15, 2017
Looks like wine-staging+nvidia users are not the only ones suffering from weird synchronization/doing-nothing-useful in the nvidia kernel module:
https://devtalk.nvidia.com/default/topic/1025576/linux/multihead-rendering-performance-issue-/

Not directly related to problems seen here of course, but my take on the above is that it smells of global locks.
I.e. that is one reason that the four cards (driver) affect each other.

EDIT: just found the global wined3d_mutex_lock/unlock - didn't go looking until now - looks like a good place to start digging deeper. Global shared lock for everything related to wined3d. IMHO Will not scale on multiple threads, especially not on Ryzen's design with CCXs. Might be I totally misunderstand how it is implemented though. :-)
maspeber Nov 20, 2017
Hi @all. I played on weekend a little more with TW3 on Wine 2.21 with the 4 staging patches, Padoka stable ppa (now 17.3-rc4): I cant use mesa_glthread=true anymore. I get a memory access violation notification in the console or Wine/TW3 launches and the screen stayed black. Without glthred=true I can start TW3. I play now again on 2560x1080 and lowered the settings to high with hairworks off, shadows middle and background population middle. In Oxenfurt on night with rainy weather my fps dropped to around 15(!). In the wilderness I got around 40fps and in villages and cities around 20-25 fps. With this settings not so nice. Playable but hmmm. Funny that the Vega now clocks better and more agressive. Very often it clocks to max boost and reaches the powertarget with around 150 Watt ... very strange what the gpu calculates for so low fps. On Windows I undeclock/undervolt my card to 1542 MHz and the card renders much more fps. Strange ...
Shmerl Nov 20, 2017
Quoting: maspeberHi @all. I played on weekend a little more with TW3 on Wine 2.21 with the 4 staging patches

Were you able to build 2.21 with those staging patches? They fail to apply for me. Staging should catch and be rebased on 2.21 first.
maspeber Nov 21, 2017
if I apply the patches to wine tag/wine-2.21 I can apply 3 of them (GenerateMips fails). If I try to apply to the master all patches fails. Hope to get 4.15-rc1 this weekend with official wine-staging 2.21 and roll back to mesa 17.2 to get more stable results.

Its not so much fun to test with my patchy setup ... 17.3-rc3 gl_thread works, with rc4 no and so on ... the utilization of the card differs so much, the patched 4.14 kernel etcetc
Shmerl Nov 22, 2017
I tweaked staging patches manually to make them applicable to Wine master (more exactly only TW3 related patchsets). xaudio patch isn't needed anymore now. I'm building Wine and will report here how it goes.
Shmerl Nov 22, 2017
Józef also made a patch that fixes invisible surfaces (bug #43131.
Shmerl Nov 22, 2017
Resulting Wine though has significantly worse performance than before now (around 20fps for me). And there is intermittent flickering. Not sure what's going on, I'm now rebuilding it without that surfaces patch to see if it's related.
Shmerl Nov 22, 2017
OK, I narrowed it down to Mesa itself. With older Mesa I get 40 fps again and no flickering:

40 fps, no flickering
OpenGL renderer string: AMD Radeon (TM) RX 480 Graphics (POLARIS10 / DRM 3.18.0 / 4.13.0-1-amd64, LLVM 5.0.0)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 17.3.0-devel (git-43a6e84927)


20-30 fps, flickering
OpenGL renderer string: AMD Radeon (TM) RX 480 Graphics (POLARIS10 / DRM 3.18.0 / 4.13.0-1-amd64, LLVM 5.0.0)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 17.4.0-devel (git-386f6cd041)


Must be some kind of regression. I can open a separate bug about it.

I wonder though if newest Mesa needs a newer kernel to work better.

I also noticed that now at least one core is always loaded for me at 100%.
maspeber Nov 22, 2017
Thank y Shmerl, for me with mesa 17.4 I got a lot of flickering while moving and in the cutscenes. with mesa 17.3-rc4 (most recent on padoka stable) I cant use glthread and back on mesa 17.2 (ubuntu 17.10) my performance is not so nice (between low 20 to maybe low 40). Its playable but not so much fun. Hope it will get better with newer versions of kernel/mesa/wine.

Despite that its amazing to see the progression of wine. Thumbs up and kudos to the developers.

ps: Does the patch work for y with the invisible surfaces? I think that are the two most annoying bugs: invisible hounds and invisible surfaces. Or are there more? With 2.21 I dont get any more freezes. I tried yesterday 2.20 staging and within 5 minutes (near Novigrad) the whole PC freezes
Shmerl Nov 22, 2017
Freeze was fixed only recently, so it's not in 2.20. The extra patch fixes invisible surfaces around underground areas, but invisible / messed up monsters is a separate issue. I still get the later.

When I'll have time, I'll try to narrow down the change in Mesa that caused performance regression and flickering.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register


Or login with...
Sign in with Steam Sign in with Google
Social logins require cookies to stay logged in.

Buy Games
Buy games with our affiliate / partner links: