Dota-2-Vulkan icon indicating copy to clipboard operation
Dota-2-Vulkan copied to clipboard

Stuttering - AMD cards

Open anijatsu opened this issue 9 years ago • 10 comments

Ever since the release of the Vulkan renderer for Dota I had issues with stuttering. It occurs when models come into view, and I figure it could have something to do with shader cache. I had reported the issue to AMD before via the support, then the driver issue form, but didn't receive any feedback. After viewing a model once, once switching the camera to it again, the stutter does not repeat. However after a restart of the game, everything stutters again. Is it possible that it could be related to the game itself? Doom ran fine without any issues on QHD resolution. CPU: AMD FX-6300 @ 4.4GHz GPU: ATI Radeon RX 480 8GB, always the newest drivers, after using DDU it did not change a thing, Shader Cache is enabled in the options RAM: 14GB DDR3 @ 1333MHz SSD (OS & Dota 2): ADATA SP920 128GB HDD: Western Digital WD10EZEX 1TB Monitor: Samsung 931BW Motherboard: Gigabyte GA-78LMT-USB3 PSU: Corsair VS550

I have also had the pleasure of reinstalling both Windows 7 and Windows 10 twice, and the issue has stayed. Game settings do not seem to matter, both borderless windowed and exclusive fullscreeen experience the same amount of stutter.

anijatsu avatar Sep 03 '16 19:09 anijatsu

This also exists for spells and particle effects.

anijatsu avatar Sep 03 '16 20:09 anijatsu

we got the same problem here,using amd r9 270x Dota 2 ingame stuttering 100%...i do installing fresh crimson driver..Cache is enabled in the options on crimson doesn't working..

Steam\steamapps\common\dota 2 beta\game\dota\shadercache\vulkan seriously folder really empty? or this part caused game stuttering?...any guide fixing this part?

CPU: AMD FX-8350 4.0ghz GPU: amd R9 270x 2GB RAM: 28GB DDR3 HDD: Western Digital WDC WD10EZRX (SATA) Monitor: Dell s2340L Motherboard:Gigabyte Technology Co. Ltd. 970A-DS3 (CPU 1)

Ritchiee avatar Sep 11 '16 06:09 Ritchiee

It's possibly driver related, as AMD's drivers should be maintaining the cache themselves - thus the Dota's cache folder is empty. I figured it'd be worthwhile to report this here however, after I noticed that Doom ran just fine when with Vulkan API.

anijatsu avatar Sep 11 '16 14:09 anijatsu

The reason the shadercache doesn't get written by Dota 2 is that the AMD Vulkan driver gives back a 0 byte pipeline cache. However, the driver is internally doing its own shader caching so I would expect that after the cache is warmed for a given pipeline it would not need to be compiled again (except on new driver/hw installs). I'll have to see if I can reproduce this.

danginsburg avatar Sep 12 '16 17:09 danginsburg

Thanks for explanation @danginsburg! Leave a note here if I can provide any further information or help.

anijatsu avatar Sep 13 '16 23:09 anijatsu

Oddly enough, version 16.7.1 of drivers seems to produce less stuttering for me. Could be placebo, or maybe it's just about the Vulkan binaries that have also been updated over time... I'm on 16.10.1 Hotfix from 10/13/2016 right now, and the stutter persists as it used to.

anijatsu avatar Oct 15 '16 08:10 anijatsu

Persists on 16.12.1

anijatsu avatar Dec 08 '16 14:12 anijatsu

CPU: AMD FX-6300 @ 4.3GHz GPU: Radeon Sapphire HD 7870 XT Shader Cache is enabled in the options RAM: 8GB DDR3 @ 1600MHz HDD: Seagate 1TB ST31000524AS Monitor: Dell P2414h Motherboard: Gigabyte 970a-ud3 PSU: XFX 550w Core edition Driver version: 16.12.1 OS version: Windows 10.0.14393

I don't know on what driver version it started but I do know that the problem didn't exist when vulkan first came out, I had better peformance with no stuttering but because of the cooldown countdown bugs I stopped using vulkan. I tried it again with driver 16.11.4 and no matter how many games I tried to watch for the shaders to get cached, I would still get stutters on each game every time I moved the camera to the other side of the map or a new particle was generated. It would normalise on the same game but on the next one it would keep stuttering once again.

I clean installed 16.12.1 with ddu again, reset the cache, tried both on and amd optimized on the shader cache options but the result was still the same.

Seems to persist on the new client update although the update has problems in itself, average framerate is down to 50-60s from 110-120, not sure if it's vulkan specific.

Is there any way I can provide more info that might help replicate it?

ritsos avatar Dec 13 '16 07:12 ritsos

Don't want to necro, but this problem still persists.

I'm running:

OS: Fedora 30 64 bit (altho this was happening with previous versions) CPU: Ryzen 2700 @ 4ghz GPU: Powercolor RX 580x 4gb RAM: 16gb DDR4 @ 3200mhz and 14 cas Driver: Mesa 19.0.1

I have Dota 2 and Steam installed on an SSD (my OS is on a separate SSD).

Everytime I get a driver update it resets it (as stated above).

I have a proposal for a bandaid fix: Why not have a launch option or a custom "game" that will preload every effect and model. It would build the entire cache all at once.

DeathTBO avatar Apr 05 '19 18:04 DeathTBO

Everytime I get a driver update it resets it (as stated above)

We have a solution to this problem that we're working towards deploying. Stay tuned.

danginsburg avatar Apr 05 '19 19:04 danginsburg