vkd3d-proton icon indicating copy to clipboard operation
vkd3d-proton copied to clipboard

Alan Wake II stuttering

Open dylanblokhuis opened this issue 8 months ago • 37 comments

Software information

Name of the game, settings used etc. Alan Wake II, low settings, VKD3D_CONFIG=dxr

System information

  • GPU: RTX 3070
  • Driver: 4.6.0 NVIDIA 545.23.06
  • Wine version: Proton Experimental
  • VKD3D-Proton version: 2.10.0

Description

Constant stuttering paired with a constant VKD3D_DEBUG log output, seems to not be shader compilation since it happens if I just turn in circles in a small area already presumebly cached area.

(edit, to clarify) Framerate is fine whenever standing still (60+ with a clean framerate graph), but the framerate graph contains immense spikes whenever turning the camera. No matter how high I push the FPS with resolution reduction, the stuttering remains.

0180:err:d3d12_command_allocator_Reset: There are still 1 pending command lists awaiting execution from command allocator iface 000000000e76a610!
0180:err:d3d12_command_allocator_Reset: There are still 1 pending command lists awaiting execution from command allocator iface 000000000e7599b0!
0180:err:d3d12_command_allocator_Reset: There are still 1 pending command lists awaiting execution from command allocator iface 000000000e761bb0!
0180:err:d3d12_command_allocator_Reset: There are still 1 pending command lists awaiting execution from command allocator iface 000000000e761bb0!
0180:err:d3d12_command_allocator_Reset: There are still 1 pending command lists awaiting execution from command allocator iface 000000000e75da70!
0180:err:d3d12_command_allocator_Reset: There are still 1 pending command lists awaiting execution from command allocator iface 000000000e7599b0!

vkd3d.log

dylanblokhuis avatar Oct 27 '23 13:10 dylanblokhuis

Does VKD3D_CONFIG=no_upload_hvv make a difference

(I don't know about the error specifically)

Blisto91 avatar Oct 27 '23 13:10 Blisto91

No difference, also tried with the stable NVIDIA 535 drivers.

dylanblokhuis avatar Oct 27 '23 14:10 dylanblokhuis

it hast to do with d3d12core.dll that game included is different from wine modded d3d12core.dll...?? i hope Kirstian look into new findings i discover in 2 latest unreal 5 games have included different versions from one another and why devs gonna in this approach now than using windows itself d3d core files ?? i just hope he doesn't have to make more modded d3d files for every game comes out, its nuts now plus with huge problems with cpu scheduler issues that now games are crashing or boots up stuttering due to cpu topology went 100% in intro sequence loading not even spread correctly on linux kernel , what microsoft update on 23h2 from previous version sure fix many games that had low fps back then that now we liinux users got many games broken lately . And i don't understand what is happening over mesa group to finalize 23.3 all sudden and move to 24 branch too early ?? what on earth is gonna on over there , 23.3 is still incomplete and still need more time in oven in testing as i was doing over ubuntu distro to make it more stable than is now, there still more games are still broken ...starfield barelly working for amd users and NVIDIA driver update barelly got it boot since mesa is not important to them when AMD is very depended on opensource team for updates and fixes that i don't mind waiting and continue on that branch but what upsetting they move to quickly on another branch 24...why not stick on working branch like 23.3 and move to 23.4 ...why jump big number ??? bottle my mind with those guys now

DRIVANnega avatar Oct 27 '23 17:10 DRIVANnega

vkd3d-proton will always use it's own d3d12core.dll so the one the games provides doesn't matter. Games can ship a newer version of d3d12core than is on the users current version of Windows so they aren't reliant on Windows shipping new DirectX updates like in the past. Game will then use either the one shipped with the game or the Windows install depending on which is newest. https://devblogs.microsoft.com/directx/gettingstarted-dx12agility/

Blisto91 avatar Oct 27 '23 18:10 Blisto91

its gonna be more complicated as years before since he made first version vkd3d , i know agilitysdk is now been most use than before , my question is vulkan library itself is latest to do whatever Microsoft throw at ?? cause mesh shaders just barely came out as extension for vulkan and not been use or tested is my problem with mesa folks, kristian just woke up sleepy giant microsoft and they learned about this now, and they are more active working with game devs closer than before it wasn't issue year ago...majority games ran fine with dxvk, and lucky for games use vkd3d haven't broke in first iteration of it from 2 years ago...now we coming something new and different from Microsoft...2nd and many more iteration of d3d12 ... i just don't know much after i switch from 3070ti to 7900xtx the drivers are confusing when nvidia majority time is easier for us user to focus on them than else where in system changes..cause nvidia drivers are all together with included vulkan patches and driver fixes while amd users are more strange to look at when they only have one option it seems with mesa but what confusing is vulkan itself under amd..not sure which radv or amdvlk ?? amdpro sure don't work at all due to distro are not outdated unless i miss something in those drivers doesn't use distro mesa and vulkan?? whole thing is so confusing to me

DRIVANnega avatar Oct 27 '23 19:10 DRIVANnega

VKD3D-Proton supports Mesh shaders and pretty much all other new D3D12 features just fine. Whether Vulkan has the required features depends on your drivers. On AMD you should use Mesa RADV and on Nvidia there pretty much only is the Nvidia proprietary driver right now. Just make sure you use the most recent version.

K0bin avatar Oct 27 '23 20:10 K0bin

well well well, it looks like my luck have change , i gonna test the game when what i found online , a game and already cracked for ready to download, well see what trouble awaits me

DRIVANnega avatar Oct 27 '23 21:10 DRIVANnega

I do not quite understand the hysteria or the uproar against mesa radv. However i wanted to counter check this. And according to my tests on Fedora 39, RX 6000 series gpu, mesa-git and vkd3d-proton master, that i just freshly compiled, AW2 runs quite smoothly despite reading errors in my log as well. I already read about stutters in AW2 with nvidia's proprietary driver somewhere else. So the cause seems to lie to some extent with the latter at least. Further investigation is needed.

fakhraldin avatar Oct 27 '23 21:10 fakhraldin

so nobody bother test it with radv and too many mention nvidia drivers...problem is ..which drivers they are using...in my honest opinion i never stay same driver,i always goes with latest ones what nvidia launch and hopefully distros follow suit since they are doing great job in making pkgs for it , cause i never had problems before like this in any game past 2 years or more years i been on linux side, now i switch back to windows due to mesa not fast enough than windows 11 bleeding edge OS. and i no longer have rtx 3070ti anymore, now with 7900xtx and cause there are folks staying at windows 11 22h when i am on windows 11 23h2., reddit users are comparing wrong revision to blindly confuse more readers of their saying that on avg its 17% faster than windows 11 platform...but which one ...2 years ago or year ago or latest one i using right now that show higher fps than this mesa version, its good it ran but what extent when running entire game...?? did have same great experience as windows without crashing ?? cause Hans sure gonna have to figure this mess with magnify glass in details with many possibilities like one theory i have is multiple d3d12core.dll , it might be game library patch for main core d3d12core.dll and how they work simultaneous together or OS kernel or its new tricks that microsoft won;t say much about it

DRIVANnega avatar Oct 27 '23 22:10 DRIVANnega

No issues with stuttering here (besides shader compilation) on an AMD 6900 XT with both Mesa 23.2.1 and mesa-git. Mesa 23.1.x shows the warning about missing Mesh shader support at the start of the game.

Slightly off topic: I noticed that HDR is not working (greyed out) on a gamescope session with HDR enabled. Works in Deep Rock Galactic (with DX12) but not here.

Another thing are some strange "missing" textures all over the world and on characters: 20231027214931_1

20231027220156_1

For comparison from a Youtube playthrough: image

Not sure if that is a Mesa, Alan Wake 2 or VKD3D issue though.

DomiStyle avatar Oct 27 '23 23:10 DomiStyle

what settings you use on proton command line ?? any RADV_PERFTEST= add on's?? i gonna duplicate the same settings after i finishing tonight downloading and testing the game then gives update , its good it work for rdna2 with some issues with missing mesh textures or textures iteslf, cause character is have missing facial details but will rdna3 work the same thing as you produce?? that me to find out

DRIVANnega avatar Oct 27 '23 23:10 DRIVANnega

I noticed the stutter on my 3080 as well, quite irritating - I'm using Wine-GE in Heroic Launcher to run my game. Will this issue only be resolved by code fix?

grahfmusic avatar Oct 28 '23 05:10 grahfmusic

@DomiStyle same issue here, but no significant stuttering and no warning about mesh shaders

adolfintel avatar Oct 28 '23 06:10 adolfintel

now i guess windows 11 win again by safe to say...it run lot faster than linux now than year ago...huge change for microsoft...so not gonna expect is gonna run great on linux , if windows already gonna 75 fps and what make you think its gonna run faster in linux ??? total BS you ask me...but i telling everyone now, this is not 2022 anymore...WE ARE IN 2023 FOR CHRIST SAKE , REALITY GONNA BE PAINFUL NOW...SO HOW MANY MORE GAMES GONNA HAVE PROBLEMS NEXT....?? SKYLINES 2 ANYONE...OH DEAR ME

DRIVANnega avatar Oct 28 '23 06:10 DRIVANnega

@DRIVANnega calm down, that's not really the point here. We report issues to help these awesome devs make linux gaming better, and for a lot of games it already is better. It's more than just "I want to play this game nao!", it's "I want to play this game without having windows bully me into using a microsoft account, spying on me, deleting my "modified executables", installing random unwanted apps, changing my default browser, updating while I play, interrupt my game to tell me about how awesome their new AI is. Should I continue?

adolfintel avatar Oct 28 '23 06:10 adolfintel

SKYLINES 2

The developers admitted that they released in a poor unoptimised state. And you are also forgetting there is constant development going on with Proton/Wine. It isn't like oh we got it working - now there is no need to improve dx12 implementation.

As for Win11, Cyberpunk actually performs better on Proton than it does in Windows for me. The Vulkan calls seem to deal with video ram garbage collection a lot better than Windows does. I did a side-by-side comparison and Proton won out there. Either way your comment isn't helping anyone other than for you to rant in a bug report which isn't productive at all.

grahfmusic avatar Oct 28 '23 06:10 grahfmusic

we are on 8 month since i made that comment about growing number former linux users over youtube...first you got chris titus...he was very linux loyalist , now he became windows user again...then another youtuber said something about don;t buy 7900xtx for just using linux...and he explained lot better than me making comments on his channel..i was prasing him like cheerleader that linux user really turn into windows user...no, what i saying is ...you lost whole 1 percent for this reason why they are growing frustrated now...cause vkd3d is now demanding when dxvk is shrinking in usage now ...its huge night and day difference from 2022 to 2023 now...imagine what 2024 gonna bring...disaster for linux, so no..we are not gonna anywhere in this pace ..just 2 more years for Linux iron out the kinks and code ...maybe come back again by 2027

DRIVANnega avatar Oct 28 '23 06:10 DRIVANnega

No one is forcing you to use linux, bro. You're playing with emulators, there are going to be issues here and there, and I bet this one with alan wake is going to be fixed within a week, it's a big release, it can't just be ignored. If you can't wait, just dual boot. I keep windows to go on an external SSD for when games don't work and I use it maybe twice a year, that's a pretty good solution, you don't have to use one OS exclusively.

Also, you have nothing to gain by bringing negativity into this project and acting all entitled.

adolfintel avatar Oct 28 '23 06:10 adolfintel

cause vkd3d is now demanding when dxvk is shrinking in usage now ...its huge night and day difference from 2022 to 2023 now...imagine what 2024 gonna bring...disaster for linux,

This statement is patently false. Your scenario only takes into account if you play bleeding edge AAA games and that is it. You have to remember the majority of the market is indie titles which "MOST" of them still use dvxk (dx11). I truly doubt every indie developer is going to go out and develop using UE5 as of next year. Anyway I'm done responding to you useless drivel. Let's get back onto the subject of the interesting bug regarding stuttering.

So if I am correct if you are using mesa-git and AMD the stutters don't exist and if you use an NVIDIA card which I have the stutter issue is more of a thing. Initially I thought it some odd shader compilation, so as a test I decided to replay some sections to see if that was the case but nope the frametime spikes were exactly the same.

grahfmusic avatar Oct 28 '23 06:10 grahfmusic

reason i always come back with linux...its the audio dsp software, man , you don't get same quality as microsoft use on their audio layer since creative introduce x-fi audio dsp effects for your music and your application usage. That was back during windows 7 era through 10, but under windows 11...audio dsp software haven't change at all, they put a lot focus in dx12 visual and they just forget about audio quality when i was using linux back then, i just notice huge difference since pipewire been default usage in latest distros since and is why jamesdsp software came handy for my headphones, oh man you should listen your music and games sound like...its quite amazing with presents i found online that includes irs and vdc files, ton of selection style its lot more than easy effect dsp...who ever began easy effect on pulse should get raise for made jamesdsp all better now to not only use irs presets , but vdc presets . Its why i use linux for, best audophile software than on windows , yes linux is good in one thing but can't win everyone to have perfect os for both worlds , its hard , and i know why i always continue supporting linux much i can but meanwhile i just hope the best for all you

DRIVANnega avatar Oct 28 '23 06:10 DRIVANnega

You realize this is a bug report about a specific game and not a forum for random ramblings, right? Might as well close this whole ticket as spam now and open a new one...

mbriar avatar Oct 28 '23 07:10 mbriar

@DomiStyle could you make a seperate issue so it's easier to track? Can't comment on if vkd3d-proton or mesa is involved or if it's just the game being funky yet.

Blisto91 avatar Oct 28 '23 09:10 Blisto91

Stuttering seems to be mostly gone after switching to wine-ge-8-21 instead of proton-ge-8-15. for whatever reason there are still few frametime spikes on new scene loads though but the massive stutters when turning the characters around seem to be gone now...

vkd3d-proton latest master nvidia 545.23.06 drivers Ryzen 5800X3D RTX 3080

edit: False alarm, the stutters are still there, i just had 80 fps cap on which reduced them somewhat. stutters seem to be worst in the diner or near it when moving the mouse around rapidly. Other places in the town area don't seem that bad.

xpander69 avatar Oct 30 '23 10:10 xpander69

At lowest quality settings the game runs at ~10 FPS for me on a 7900XT and 5800x3d. Everything is up-to-date:

Linux 6.6.0 mesa-git wine-ge-8.22

Don't have any RADV_PERFTEST or VKD3D_CONFIG env variables set.

MatthiasGrandl avatar Nov 01 '23 04:11 MatthiasGrandl

At lowest quality settings the game runs at ~10 FPS for me on a 7900XT and 5800x3d. Everything is up-to-date:

Linux 6.6.0 mesa-git wine-ge-8.22

Don't have any RADV_PERFTEST or VKD3D_CONFIG env variables set.

How is that related to stuttering issue? seems to be a different problem

xpander69 avatar Nov 01 '23 09:11 xpander69

@xpander69 sorry, maybe I misunderstood the issue here. For me stutter == low FPS... my VKD3D_DEBUG looks the same as the OP.

Some additional info, cutscenes and menus are smooth as butter, but as soon as gameplay starts it's basically unplayable. GPU at 100%.

MatthiasGrandl avatar Nov 01 '23 12:11 MatthiasGrandl

@xpander69 sorry, maybe I misunderstood the issue here. For me stutter == low FPS... my VKD3D_DEBUG looks the same as the OP.

Some additional info, cutscenes and menus are smooth as butter, but as soon as gameplay starts it's basically unplayable. GPU at 100%.

I edited my initial issue, my stuttering problem doesn't have to do anything with initially a low framecount, I can stand still with 60+ fps just fine, it just gets real bad when turning the camera.

dylanblokhuis avatar Nov 01 '23 12:11 dylanblokhuis

sorry, maybe I misunderstood the issue here. For me stutter == low FPS...

Stutter usually means very short high frame time spikes. E.g. when compiling shaders at draw time a game might have a very big fps drop very shortly, talking milliseconds here, then normal fps again back. So it will feel like it shortly pauses and then snaps back. Usually happening at irregular intervals.

Blisto91 avatar Nov 01 '23 13:11 Blisto91

@MatthiasGrandl Same story with 7900 XTX here. It seems that RDNA3 cards with radv have their own problems with Alan Wake II. It's probably better to report it to Mesa team.

Update: Running the game with VKD3D_DISABLE_EXTENSIONS=VK_EXT_mesh_shader option fixes this performance problem for me.

chelobaka avatar Nov 01 '23 14:11 chelobaka

Update: Running the game with VKD3D_DISABLE_EXTENSIONS=VK_EXT_mesh_shader option fixes this performance problem for me.

That just makes it crash for me on Nvidia, pretty much disabling a core graphic function of the game.

grahfmusic avatar Nov 08 '23 10:11 grahfmusic