protonscr

DARK SOULS III - massive frame drops at 1440p/2160p

dxvkclosed
doitsujin/dxvk#1181 · opened 2019-09-02 by ghost · updated 2020-04-04 · 20 comments · github
?ghost 2019-09-02 github

It is running with 60fps most of the time but it can drop down to 17fps and start to stutter while my GPU utilization halves and my CPU utilization stays low. The amount of objects on the screen doesn't seem to be the issue. Changing the settings to low or switching to 1440p doesn't help. I can play other games fine with high/ultra settings at 2160p(like the witcher3).

Software information

Name of the game: DARK SOULS III
Settings: from Low to Max, from 1440p to 2160p

System information

  • GPU: RTX 2080
  • Driver: 430.40 with the previous stable drivers
  • Proton version: 4.11.3 down to 3.16-9
Ddoitsujin maintainer 2019-09-02 github

Sounds like you're running out of VRAM. Close any browser you have running in the background.

This is not a bug, there's nothing wrong with Dark Souls 3 in particular at high resolutions..

TTrevonn 2019-09-02 github

On my 5700XT the game runs as expected at 4K Max Settings (45-50FPS)

System information

GPU: RX 5700XT
Driver: mesa-git
Proton version: 4.11.3
?ghost 2019-09-03 github

I already tried not running things next to ds3. According to GWE and psensor, the GPU and memory usage are always low when the drop happens and the memory usage is low in general.
As I said, I get 60fps most of the time but it drops down randomly and my GPU/CPU usage falls with it(the GPU usage falls as much as the FPS - when the drop is just 10-20fps the GPU usage will be 90-80%, when it's down to 20fps the GPU usage will be around 20%). When I look at the same view again(or just wait 1-2 sec), it gets back to 60fps every time. The amount of FPS drop doesn't seem to be related to the amount of objects on the screen, it can drop down even if I'm looking at a pile of dirt in a closed room with nothing happening around.
I shouldn't run out of anything when I'm running it at 1440p with the lowest settings.
It can't be related to saving either because it never happened when it was saving the game and I have an SSD.
I tried disabling vsync in the nvidia settings and I have the composition settings disabled.

?ghost 2019-09-03 github

@Trevonn do you have ryzen too?
A lot of windows+ryzen users were complaining on various forums about ds3's performance and they were experiencing huge fps drops even with 6-8GB VRAM at 1080p.

TTrevonn 2019-09-03 github

Yeah 2700x but it had no negative impact on performance.

?ghost 2019-09-03 github

I have an 1800x. Is your GPU utilization 99-100%? 45-50fps seems to be low for the 5700xt. My previous card was a gtx1080(supposed to be slower than yours, had the same issues with ds3 as my current setup and I only changed the GPU a few months ago) and it could hold 60fps most of the time, just like the rtx2080.

TTrevonn 2019-09-03 github

Yes and Navi isn't fully optimised on Linux yet that's why it's a bit lower than expected

?ghost 2019-09-03 github

It looks fine here: https://www.phoronix.com/scan.php?page=article&item=radeon-5700-linuxgl&num=6
Is your GPU utilized properly?

TTrevonn 2019-09-03 github

It is specifically the Vulkan driver lacking optimisation. Those are only opengl results. We're getting off topic now though. I'd suggest you close this bug though until you have something more conclusive.

?ghost 2019-09-03 github

No, we are not off topic at all and I opened this because I don't have anything conclusive.

?ghost 2019-09-03 github

I'm seeing people mentioning framedrops in the protondb reports: https://www.protondb.com/app/374320

Ddoitsujin maintainer 2019-09-03 github

A handful of people seem to have issues. The "framerate drop after death" thing has been fixed for quite some time now.

Anyway, I don't really see what I'm supposed to do about this. The game runs fine on my end and unless your Nvidia driver for some reason decides that your VRAM is full even though it isn't (see #1100), there really isn't any obvious issue with this game.

?ghost 2019-09-03 github

I generated logs: I switched between 2160p, 1440p, low and max settings. I monitored my GPU and the memory utilization was between 31% and 64% while the GPU usage was between 40% and 98% - the two seemed to be tied when increasing/decreasing. None of my CPU cores were utilized more than 70%(peeked at the start only) and 35% was the average. Only GWE, nvidia-settings, ksysguard and steam were running. I didn't see the "DxvkMemoryAllocator: Memory allocation failed" message in the logs either. Could it be a RAM bottleneck? I have two 8GB 2666Mhz single-rank sticks. What are your system specifications(if it's public)?

?ghost 2019-10-04 github

Update: I have purchased a 2x8gb SR kit with 3200mhz and CL16 and OC'd it in the MOBO - it didn't fix the issue. When the drops happen, neither the GPU nor the CPU is utilized properly.

?ghost 2019-10-11 github

I know what's the problem: the classic integrated double-buffering vsync. Usually, dbvsysnc will try to "downgrade" the FPS to the previous supported FPS cap when the rate falls by 10-15%(saw this in witcher 3 too). Since DS3's areas are fragmented, the game will load stuff more often which cause minor FPS drops at certain places. I experienced the worst FPS drops at 4k/ultra(down to 17, but I was usually locked to 30 - new shadows are expensive) but when I set my refresh rate to 50hz, the drops disappeared and the average drop was just 2-3 fps(< 10%). Enabling force-composition-pipeline helps too because it interferes with games' vsync.
If there would be a way to disable vsync in games where they don't allow it...
Anyway, I'm closing this because it's an issue in the game.

Ddoitsujin maintainer 2019-10-11 github

If there would be a way to disable vsync in games where they don't allow it...

DXVK provides one; creating a dxvk.conf next to the game exe with the following contents should disable Vsync:

dxgi.syncInterval = 0

This will not disable the game's 60 FPS lock though.

?ghost 2019-10-12 github

Thank you, @doitsujin! Now I only get noticeable drops when I enter new areas and only for 1-2 seconds. The places where I consistently lost 30fps became smooth and now I only lose 4-5 fps.

Ttmarplatt 2020-03-25 github

If there would be a way to disable vsync in games where they don't allow it...

DXVK provides one; creating a dxvk.conf next to the game exe with the following contents should disable Vsync:

dxgi.syncInterval = 0

I must say this setting alone managed to solve the most annoying stutters I have been noticing in Assassins Creed: Revelations. They were so bad and intruding that I was about to give up with the game, as no other attempts to fix it was working.

Please consider adding this piece of advice in the wiki, under the Performance section of the Common Issues article.

Ddoitsujin maintainer 2020-03-25 github

This option will in general not fix stuttering issues, and has no effect at all on Assassin's Creed Revelations because that is actually a Dx9 game (unless you were using the d3d9 counterpart of that option).

Hard to tell what exactly your issue is without hardware details though, PRIME setups may have weird frame times.

Ttmarplatt 2020-04-04 github

Indeed, I'm sorry for the misinformation. In fact the stutters continue to be there, and they appear on every new cutscene. But this belongs in its own issue ticket.

Nothing extracted yet.