protonscr

Diablo IV - FPS drops after a while

vkd3dopen
HansKristian-Work/vkd3d-proton#1588 · opened 2023-06-06 by marco-kretz · updated 2026-05-30 · 65 comments · github
Mmarco-kretz 2023-06-06 github

Hey there,

I played D4 the last fews days and I noticed a significant drop in FPS after playing for a while. Checking VRAM usage with radeontop tells me that VRAM is maxed out and hovers around 98%-101%. FPS when starting the game is fine at around 120fps but after playing for a while, visiting multiple different places, FPS drops start to appear (~20-40fps) to a grade where the game is no longer playable. Restarting the game "resets" the problem.

It does not seem to be Radeon-specific. Another user on Reddit with an NVIDIA card reported the same problem and that's why I thought it maybe is caused by vkd3d.

Software information

Diablo IV via Lutris
High settings | Medium settings / VSync On|Off / FSR On

System information

  • OS: openSUSE Tumbleweed (also got the problem in Arch with Mesa 23.1, same VKD3D tho)
  • GPU: Radeon RX 5700XT
  • Driver: Mesa 23.0.3
  • Wine version: lutris-GE-Proton8-7-x86_64
  • VKD3D-Proton version: 2.9
KK0bin 2023-06-06 github

Windows is simply better at vram management and there isn't really anything vkd3d-Proton can do about it.

Mmarco-kretz 2023-06-06 github

Windows is simply better at vram management and there isn't really anything vkd3d-Proton can do about it.

Okay so the only thing I can do about it is getting more VRAM? I'm getting a 4070Ti today with 12GB VRAM, will see if it still happens then.. :(

HHacki95 2023-06-06 github

Im the other user with the nvidia card. Posting here in case any additional info is needed.

Even if Linux is worse in VRAM management than windows, does it make sense that even with Low settings it gets full after a few minutes and FPS begin to drop?

Under windows VRAM stays at a certain value and doesnt increase anymore. After a few hours of gaming yesterday I was at around 7 GB used from 8. Under Linux 8GB are full in a matter of minutes like it has problems freeing up VRAM again.

I don't have this issue with any other game as far as I can tell.

KK0bin 2023-06-06 github

Depends on how the game manages memory. It's not uncommon for games to decide the size of their texture streaming pool based on available VRAM.

Mmarco-kretz 2023-06-06 github

Hmm it seems like the problem was known (even on Windows) in the Beta: https://us.forums.blizzard.com/en/d4/t/diablo-4-eats-24-gig-vram/11234/18

Many threads complaining about the game eating up to 22GB VRAM. They seem to partially fixed it tho because I can't reproduce the exact same symptoms on Windows. What I encounter on Windows are no FPS drops, but lags and rubberbanding... Argh Blizzard, fix your game -.-

HHacki95 2023-06-06 github

Hmm it seems like the problem was known (even on Windows) in the Beta: https://us.forums.blizzard.com/en/d4/t/diablo-4-eats-24-gig-vram/11234/18

Many threds complaining about the game eating up to 22GB VRAM. They seem to partially fixed it tho because I can't reproduce the exact same symptoms on Windows. What I encounter on Windows are no FPS drops, but lags and rubberbanding... Argh Blizzard, fix your game -.-

Yes weirdly while the FPS are lower it still often feels smoother on Linux since it doesn't drop as hard.

Depends on how the game manages memory. It's not uncommon for games to decide the size of their texture streaming pool based on available VRAM.

Is there maybe a way to trick Linux into thinking it only has like 7.5 GB of VRAM to try and trick it into not overfilling the real VRAM? Wondered if that might help yesterday.

BBlisto91 2023-06-06 github

Maybe for the game itself with dxgi.maxDeviceMemory in a dxvk.conf file placed next to exe (usually. Or point to it with DXVK_CONFIG_FILE)
e.g. dxgi.maxDeviceMemory = 7500 or something. Tho it might not do anything since it's just what is reported to the game through dxgi

EeXt73 2023-06-14 github

Have you tested driver 535.43.02 ? They significantly improve the VRAM memory management process - I checked it under Cyberpunk 2077.

Mmarco-kretz 2023-06-14 github

Have you tested driver 535.43.02 ? They significantly improve the VRAM memory management process - I checked it under Cyberpunk 2077.

I did not. I returned the 4070Ti because I got a 7900xtx for the same price. Will test when it arrives tho I think D4 has to do something on its side.

LLepaBrenaa 2023-06-16 github

I am on AMD (RX 6800XT), and have noticed significant fps drop after playing for about 30 minutes. Also my entire PC would have the same FPS of the game whilst the game is open.

If I enter settings screen or open the map however, FPS becomes normal again.

It feels like 10 FPS. At the release of D4 i haven't had that issue. VRAM shouldn't be an issue.

KK0bin 2023-06-16 github

VRAM shouldn't be an issue.

Are you sure about that? I've seen Diablo 4 use 20GB of VRAM at max settings. It's a pretty broken in that regard.

LLepaBrenaa 2023-06-16 github

VRAM shouldn't be an issue.

Are you sure about that? I've seen Diablo 4 use 20GB of VRAM at max settings. It's a pretty broken in that regard.

Well haven't had those drops when the game launched. Therefore haven't thought it could be a problem.
I managed to get 3hr+ sessions at the launch, and haven't had the issue.

Mmbriar 2023-06-16 github

Can't you just check again if VRAM is actually not the issue? Should be easy enough. Note that AMD drivers also don't support VK_EXT_pageable_device_local_memory, so they don't really benefit for the recent improvements in vkd3d-proton.

LLepaBrenaa 2023-06-16 github

Just checked right now with mangohud.

FPS dropped from around 150 to 30 after around 30 minutes of playtime.

From the first minute VRAM usage was going from 15.1GB - 15.7GB.

Now after the FPS dropped to 30, VRAM usage is still the same (jumping from 15.1GB to 15.7GB, but mostly staying at 15.5GB).

Because the VRAM usage was the same from the first minute, I doubt that the issue is that because the FPS was great for the first 30 minutes.

KK0bin 2023-06-16 github

So VRAM is full. Performance probably drops off the cliff because the game re-allocates some performance critical resource and it ends up in system memory this time around.

Mmbriar 2023-06-16 github

Looks 100% like VRAM is the issue to me. You're sitting at around ~95% utilization, and with fragmentation it can and will eventually happen that some critical render target gets spilled to system RAM. And because VRAM management is almost non-existent on AMD linux, it will stay there forever and tank fps until you restart the game.

LLepaBrenaa 2023-06-16 github

Okay, that what both of you guys explained right now makes sense to me then.
I am just curious as to why does it run smooth when in settings screen or while the map is open. But I guess no rendering is being made when those things are on the screen.

So I guess there's nothing I can do on my end? I don't want to make the game look worse via settings just to circumvent the VRAM issue.

KK0bin 2023-06-16 github

I am just curious as to why does it run smooth when in settings screen or while the map is open. But I guess no rendering is being made when those things are on the screen.

Probably doesn't use any render target thats allocated in system memory in that case.

So I guess there's nothing I can do on my end? I don't want to make the game look worse via settings just to circumvent the VRAM issue.

Reduce texture quality.

Mmarco-kretz 2023-06-16 github

[...] And because VRAM management is almost non-existent on AMD linux, it will stay there forever and tank fps until you restart the game.

Out of curiosity, why? This seems, at least for me, something super crucial for a graphics driver, isn't it?

But nonetheless, problem also exists with NVIDIA.

KK0bin 2023-06-16 github

On Windows it's handled by WDDM, a part of Windows itself.

Mmbriar 2023-06-16 github

I don't really know why, but it sounds to me like latest vkd3d-proton master together with latest nvidia drivers and VK_EXT_pageable_device_local_memory is supposed to help this case. (but only if the game uses D3D12's MakeResident()/Evict() properly? If it just relies on WDDM magic to be smart enough about moving stuff around then it won't help, i think)

From my understanding, AMD vulkan drivers use a "global bolist" for every application that uses descriptor indexing (all games on vkd3d-proton use this), where every resource is always valid/in-use for every submission, which sounds like it would make implementing VK_EXT_pageable_device_local_memory in a useful fashion very difficult and already makes VK_EXT_memory_priority pretty much a no-op. In addition, RADV also always adds GTT to the preferred heap (see https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6833/diffs), which means the kernel driver has absolutely no idea what is important to keep in VRAM or move back to VRAM as soon as possible, and what is ok to spill.

HHacki95 2023-06-17 github

I have not been able to test the new 535 drivers yet I will report back once I do.

Reduce texture quality.

This is only a very temporary fix, change the area once and its full again.

[...] until you restart the game.

for me its even worse. Ive come to notice that at a certain point the performance is more than halfed and only a full restart of my PC can fix it. I have no idea whats going on it that regard and I am not sure yet if I can replicate this every time.

For now I was so frustrated with playing d4 under linux that I boot into my windows os when I feel like playing. I will try to tinker around again though with the new drivers this weekend and see if that fixes any of the issues.

Bburghoffdavid 2023-06-20 github

Same issue here:

  • OS: Arch
  • GPU: Nvidia RTX 2070 Super (8 GB)
  • Driver: 535.54.03 (latest)
  • Wine version: lutris-GE-Proton8-8-x86_64
  • VKD3D-Proton version: 2.9
  • Game preset: High (low)

Initially it runs great, but after porting to a couple locations, performance drops drastically (120 fps --> 26 fps) and frametimes become erratic.
Observed vram usage while gaming, it seems like it never deallocates any vram, it just keeps rising, up to the point of showing gray ground textures on the high preset. When in instanced dungeons, its a bit better but you can still observe framedrops and lower fps. Even when setting everything to low, it eventually uses close to 8GB of vram.

Also tried the suggested VK_EXT_pageable_device_local_memory fix, sadly it did not help...

Edit: For anyone wondering what the gray textures look like (Medium preset). Another thing I noticed, once you stand still for a while, fps and frametimes normalize.

image

HHacki95 2023-06-24 github

I also tried out some new things with the new drivers those are my findings:

  • The new drivers seem to make it worse in certain situations. Like the poster above me, it now not only drops down to ~70 from ~120 but down to unplayable 30 fps.

  • This only happens if I put my textures to at least "high" (at least in the short windows I played). If I put them to medium my VRAM seems to be capped at around 7,6/8 GB and it doesnt start to lag. Sadly medium textures look rather bad but at least it seems to be "playable" that way now. This all adds up over playtime but it seems like with medium textures the game manages to free up enough VRAM fast enough to not start lagging completely.

Edit: For anyone wondering what the gray textures look like (Medium preset). Another thing I noticed, once you stand still for a while, fps and frametimes normalize.

When you change your texture settings and click apply, so the game reloads some assets then the ground will look normal again and FPS will also be normal for a little while until it fills up again. If you make your mangohud show VRAM you can see it for yourself.

Also trying to trick Linux into thinking it has less VRAM like I wanted to try doesnt seem to help at all.

HHacki95 2023-06-25 github

I was able to play for several hours today without any big issues.

The main thing I changed was setting the overall graphic settings to medium instead of medium with high textures.

My VRAM hovered around maximum of 7,8-7.9 GB sometimes slightly decreasing and sometimes increasing. So it seems like it does indeed free up VRAM occasionally. Once I've set the textures to high again it always got to 8GB and began dropping frames as low as 30FPS.

Under Windows I can play with high settings and some VRAM to spare so it seems like its still not running ideally but at least I found a way how to make it somewhat playable, although with much worse performance.

?ghost 2023-06-26 github

Greetings everyone.

I'm new to the game, actually created my character today. However I didn't notice this FPS drop problem.

I'm on Debian with VKD3D 72dc32d139a1f64319a5ae230ba390f0971eef54
And NVIDIA RTX 3080 10GB

I'm using a special WINE which is built for Final Fantasy XIV: https://github.com/goatcorp/wine-xiv-git/releases/tag/8.5.r4.g4211bac7

My point is that this WINE version's changelog says "Fixes stuttering after around 40 mins of gameplay"

Maybe you could try it either to see if it help?

HHacki95 2023-06-26 github

Greetings everyone.

I'm new to the game, actually created my character today. However I didn't notice this FPS drop problem.

I'm on Debian with VKD3D 72dc32d And NVIDIA RTX 3080 10GB

I'm using a special WINE which is built for Final Fantasy XIV: https://github.com/goatcorp/wine-xiv-git/releases/tag/8.5.r4.g4211bac7

My point is that this WINE version's changelog says "Fixes stuttering after around 40 mins of gameplay"

Maybe you could try it either to see if it help?

I might try it and see if it helps. With my latest tests I used GE-Proton-8.8.

Are you playing on at least high settings though? I have a feeling it might has something to do with the Texture Quality settings. Too high fills up too much VRAM.

Ive seen some other reports recently though that people also experience this problem on windows. It might be a problem with the game itself after all that just gets worse on linux.

CCybereu 2023-06-26 github

Greetings everyone.
I'm new to the game, actually created my character today. However I didn't notice this FPS drop problem.
I'm on Debian with VKD3D 72dc32d And NVIDIA RTX 3080 10GB
I'm using a special WINE which is built for Final Fantasy XIV: https://github.com/goatcorp/wine-xiv-git/releases/tag/8.5.r4.g4211bac7
My point is that this WINE version's changelog says "Fixes stuttering after around 40 mins of gameplay"
Maybe you could try it either to see if it help?

I might try it and see if it helps. With my latest tests I used GE-Proton-8.8.

Are you playing on at least high settings though? I have a feeling it might has something to do with the Texture Quality settings. Too high fills up too much VRAM.

Ive seen some other reports recently though that people also experience this problem on windows. It might be a problem with the game itself after all that just gets worse on linux.

What appears to mitigate the issue for me is either reducing the anisotropic filter.

Maybe this issue is related to:
https://forums.developer.nvidia.com/t/graphical-regression-in-elite-dangerous/247010/9

?ghost 2023-06-26 github

Are you playing on at least high settings though? I have a feeling it might has something to do with the Texture Quality settings. Too high fills up too much VRAM.

Yes, high settings on a 1080p screen with FSR 2 set to Quality.

I didn't finish the whole mainline story in the game, so maybe it's just too few mob on my screen.

NNextWork123 2023-06-27 github

I'm facing that issue as well. I play Diablo IV with Lutris, and the first 30 minutes are very smooth. However, after that, the frame rate drops to 50-30, making it unplayable because the game consumes all the VRAM.

  • OS: Cachyos (based on arch linux)
  • GPU: AMD RX 6600 (8 GB)
  • Driver: mesa-git - radv (latest)
  • Wine version: Proton-Cachyos (based on proton experimental)
  • Game preset: High

Edit: I put proton-ge-custom and is working without issue if someone have that issue i suggest to try that.

Eeszlari 2023-06-28 github

@adamnv As the author of #1543, maybe you can tell us if Nvidia could fix this on the driver side?

Ddarksidewalker 2023-07-12 github

Can confirm that if textures are set to high the ground gets removed or clips.
I updated today to the nvidia 535.54.03 and lutris-ge-proton 8.10.
Game is on 1.4 and vk3d is latest, build today.

Game is only stable on medium trextures, the other settings just does not matter for me.

RTX2070s, Ryzen 7800X3D, 32 GB RAM, Kernel 6.4.2

Pplfort 2023-07-20 github

@marco-kretz did you try to downgrade vkd3d to v2.8 in Lutris settings ?

BBlisto91 2023-08-11 github

@marco-kretz and others can you check this issue again? The 1.1.1 patch supposedly improves vram management in the game.

Ddarksidewalker 2023-08-12 github

@Blisto91 problems persist.
On high settings the ground textures still clip or load very slowly.
I'm using the latest vkd3d (build) and latest drivers/kernel, Lutris-GE-proton-8-13 on Manjaro. I'm using a RTX2070S and Ryzen 7800X3D (latest BIOS Gigabyte), 32GB RAM and DLSS balanced. Most settings on medium, otherwise you get clipping and massive stutters/framdrops.

I had some tests yesterday. SSAO is directly related to this most of the time. If it is OFF, it almost never clips and the higher the setting, the faster it clips.

Ddarksidewalker 2023-08-13 github

Did some more testing. Re-installed everything (Lutrix, BattleNet app and D4) from scratch.
Shadow quality and SSAO had the biggest impact on constant framerates and frame drops when loading new areas and textures.

I have included my LocalPerfs.txt for settings to compare. With these settings I got a stable 60 FPS with 50-65% GPU utilisation in the Kehjistan desert and in towns and dungeons.
In Scosglen (Corbach) it goes up to 80% GPU usage.

Here comes the bad part:
After some transitions from one world area to another (like Kehjistan to Fractured Peaks) I sometimes get 100% GPU load with unstable ~30-50 FPS.

My 8GB VRAM was always completely full and I did not install the high resolution textures.

One good thing is that there were no missing textures atm.
LocalPrefs.txt

Ddarksidewalker 2023-09-05 github

Capping the Max Foreground FPS to 60 and the Max Background FPS to 60, 30 and 8 has the floowing effect at my system.

The frametimes are:

  • at 60 are ~15ms
  • at 30 are 33,3ms
  • at 8 they go 125,2ms.

Reverting D4 back from background to foreground:

  • 8 to 60 fps results on major stutters before going normal
  • 30 to 60 micro stutter almost not noticeable
  • 60 to 60 no stutter

Otherwise my CPU Ryzen 7800X3D is at 3-5% while playing and ~30% while transitioning to new areas. Switching background and foreground does not impact the usage at all.

Edit: The GPU is at 60-80%.

DDaisZen 2023-11-02 github

Still the same issue since the game release, this time with:

  • kernel 6.6

  • NVidia drivers 545.29.02

  • I tried with the latest GE-Proton8-22

  • EndeavourOS (Arch)

  • Geforce RTX 3080 10GB VRAM

  • AMD Ryzen 5900X

  • 32GB DDR4 at 3600

How do I try it ?

  • Begin in a big town, and go in a zone near it, kill some enemies
  • Teleport to another big town. Most of the time it will have the big stutter issues and the textures missing. And if it doesn't, then go in a zone near this town.

Changing the textures from high to medium resets the problem... until it goes back later.

Ddeathxxx123 2023-11-06 github

@marco-kretz and others can you check this issue again? The 1.1.1 patch supposedly improves vram management in the game.

Still present vram leak.
I have Pop!_OS, Manjaro Gnome.
Nvidia 3060 TI 8GB
Try with lastest stable driver and lastest beta driver. Same vram leak.
Just look at MANGOHUD and walking in town forward and back and see how Vram increasing up to max. Then little stutters appear and bigger when i dash forward.
Blizzard did not fix anything. Any other game i have - don't have vram issue!
I tested with Steam and Battle.net releases.
With Steam release run much better, but both have vram leak.

BBlisto91 2023-11-06 github

You should report it to Blizzard. I still see reports of the same on Windows.

Ddeathxxx123 2023-11-06 github

You should report it to Blizzard. I still see reports of the same on Windows.

Yes, but they does not care about Linux.
I have win11 also and have drop FPS too, but not inspect it still. Maybe is same issue.

Edit:
I try on win11 and issue is fixed. but not very well. Vram still move little up and down +- 1-2GB. Its a work around Blizz fix. Mostly stay about 6.8GB.
In linux is in begining only. Then go to 8GB all time.

Jjoexzh 2023-11-07 github

Enable SGX (Intel® Software Guard Extensions) in BIOS / UEFI solved the problem for me, but I wonder why.
With SGX, VRAM is at most 7.977 / 8 GiB, no longer cause GPU 100% usage and fps drop in Diablo IV.

Sorry it still happens, didn't realize the texture quality was set to low during the test.
Once set to medium or high, teleport to different cities, fps drops, that's sad.

System Information:

  • Intel® Core™ i5-8600K
  • NVIDIA GeForce GTX 1080
  • Nvidia Driver 535.129.03
  • Debian sid
  • Linux Kernel 6.5
  • KDE plasma 5.27 with X11
Ddeathxxx123 2023-11-07 github

I think the Blizz vram leak fix is using some of win11 features to keep clean unused vram. For that for wine or proton this is still no fix.
I watch it on steam deck, and vram usage are rock soild without moving up or down. But there are mesa and radeon.
I have radeon cards and will test with them for you my friends. I think open-source driver will do better.

Ddeathxxx123 2023-11-09 github

So i'm back from testing with Radeon card.
OS: POP!_OS 22.04 LTS
Video: Radeon RX480 8GB
Driver - open source (just install POP!_OS and steam)

In Diablo 4, no problem with VRAM leak(it is super soild) or lag. I play like 2 hours and game was super smooth. It's Radeon made.
ANd there was one more update to Diablo 4, so i will test with Nvidia again with this update.

To be clear: i only change the videocard, all other specs are the same, even the OS.

Ddeathxxx123 2023-11-09 github

I test again with nvidia 545.29.02 driver RTX 3060TI 8GB
And i got my VRAM eaten up to 8GB just with few teleportation to other locations.
So this issue is for Nvidia only. I could try with nvidia-open driver, but everything is slow - even desktop, so i cannot test.

Ddeathxxx123 2023-11-11 github

Me is again.
Now for Nvidia cards we may have a fix or workaround.
I got no VRAM leak with this launch option:
PROTON_HIDE_NVIDIA_GPU=1 %command%
I don't know why this is working, but now VRAM never reach 8GB, but stay around 6.8 / 7.4GB depends of area.
I play like 2 hours with this option and teleport to like 30 areas and VRAM usage is stable.

And please, other guis with Nvidia cards, try this to see if this is working only for me.
Driver i use is: 545.29.02
Steam client Beta
Pop!_OS 22.04

DDaisZen 2023-11-14 github

I haven't tried your solution yet @deathxxx123 because I suppose it would disable access to DLSS.
But also because I tried downgrading vkd3d to 2.8 (as someone said earlier in this thread) and i managed to play hours all this week-end without any texture bug, and the only performance problem is that after hours i began losing a bit of FPS. Oh, And I couldn't watch a stream on my second monitor without having performance issues too.

Ddeathxxx123 2023-11-14 github

I haven't tried your solution yet @deathxxx123 because I suppose it would disable access to DLSS. But also because I tried downgrading vkd3d to 2.8 (as someone said earlier in this thread) and i managed to play hours all this week-end without any texture bug, and the only performance problem is that after hours i began losing a bit of FPS. Oh, And I couldn't watch a stream on my second monitor without having performance issues too.

Yes, you lose DLSS option, but AMD FSR 1.0 is much better, eat less VRAM and drop GPU usage more than DLSS or FSR 2.0.
I play with steam version with lastest Proton with no problem.

Ssir-wallaby 2024-01-24 github

I got no VRAM leak with this launch option: PROTON_HIDE_NVIDIA_GPU=1 %command%

I can confirm, this seems to resolve both - the low quality textures popping in after 'porting to a new location and the performance drop.

Driver Version: 535.146.02
RTX 3070ti

Mmutotemiz 2024-04-07 github

PROTON_HIDE_NVIDIA_GPU=1 %command%

Does this fix work on the Lutris installation as well? Since Lutris is using wine, not proton...

?ghost 2024-05-16 github

PROTON_HIDE_NVIDIA_GPU=1 %command%

Does this fix work on the Lutris installation as well? Since Lutris is using wine, not proton...

Yes; just select a Proton version in the "Wine launcher" dropdown in the Wine runner options

Mmercifulboss 2024-05-16 github

I got no VRAM leak with this launch option: PROTON_HIDE_NVIDIA_GPU=1 %command%

I can confirm, this seems to resolve both - the low quality textures popping in after 'porting to a new location and the performance drop.

Driver Version: 535.146.02 RTX 3070ti

It seems to resolve frame-rate issues MOSTLY. Still get decreased FPS after porting to a new location and loss of ground texture after some time

Ddeathxxx123 2024-05-17 github

I got no VRAM leak with this launch option: PROTON_HIDE_NVIDIA_GPU=1 %command%

I can confirm, this seems to resolve both - the low quality textures popping in after 'porting to a new location and the performance drop.
Driver Version: 535.146.02 RTX 3070ti

It seems to resolve frame-rate issues MOSTLY. Still get decreased FPS after porting to a new location and loss of ground texture after some time

I fix texture with slide to lower texture quality in options, or just change to low, then back to high and texture is fixed until next bug. Also lowest quality texture does not bug over time.

JJesusHernandezFlores 2024-06-07 github

saw that there was still an update on this 3 weeks ago. Wanted to ask if this is just generally an nvidia issue or if radeon gpus still suffer from this? Currently on a 3080Ti but wouldn't mind switching over to an amd card if it means no issues.

Diablo 4 is one of my main games and literally the only one I play with my sibling so it would be nice to have a good experience overall lol. Using the PROTON_HIDE_NVIDIA_GPU=1 did not work for me. Currently on driver 550 if that helps

XXapaJIaMnu 2024-06-07 github

Try disabling dlss.

JJesusHernandezFlores 2024-06-07 github

Try disabling dlss.

Just checked but I don't use it to begin with :/

Ssir-wallaby 2024-06-09 github

I got no VRAM leak with this launch option: PROTON_HIDE_NVIDIA_GPU=1 %command%

I can confirm, this seems to resolve both - the low quality textures popping in after 'porting to a new location and the performance drop.

Driver Version: 535.146.02 RTX 3070ti

This does not seem to apply to Wayland. I still get VRAM related crashes and freezing when using this launch option on Wayland. However, when I run the game on X11, everything works properly as long as I use 'PROTON_HIDE_NVIDIA_GPU=1'

Mmarco-kretz 2024-06-16 github

Me is again. Now for Nvidia cards we may have a fix or workaround. I got no VRAM leak with this launch option: PROTON_HIDE_NVIDIA_GPU=1 %command% I don't know why this is working, but now VRAM never reach 8GB, but stay around 6.8 / 7.4GB depends of area. I play like 2 hours with this option and teleport to like 30 areas and VRAM usage is stable.

And please, other guis with Nvidia cards, try this to see if this is working only for me. Driver i use is: 545.29.02 Steam client Beta Pop!_OS 22.04

Can confirm this works. Playing for several hours with high textures and not a single crash. Will test on Wayland when 555 gets stable. . I'm using Lutris + latest Proton9 beta.

Ddnotq 2024-06-27 github

I am having the same texture problem as @burghoffdavid posted on June 20, 2023. It started when I changed from a Radeon RX-6650-XT to an nvidia RTX-4060-TI. The details of it all get very long, but I'll try to summarize for the sake of brevity.

System:
Ryzen T.R. Pro 3945WX 12-core
nVidia RTX-4060-TI
Kubuntu 22.04 LTS
KDE 5.24.7, X11
nVidia driver 535.183.01
Lutris for launching BattleNet / running D4

Runner Options -> Wine version are pretty much everything mentioned here so far: wine-ge, ge-proton, proton (experimental), lutris-ge-proton8, system (9), UMU-proton-9, and more.

The RX-6650-XT worked fine for 100+ hours of D4 (beta through about Season 2, IIRC), and when D4 first came out I seem to recall needing to set VKD3D down to V2.8 to get it to launch. I'm using Lutris and pretty much made that one change and never had further problems. With the 6650-XT, when D4 launched I would always get a pop-up box saying "unknown video card", click "ok" and all seemed to work fine.

When I installed my 4060-TI, the Lutris settings also updated (I don't remember what prompted that, maybe installing the nvidia drivers prompted some update), and I didn't pay much attention to it. There was no more "unknown video card" popup with the 4060-TI though, and the game seemed to start quicker.

I am a very tolerant gamer, and I just accepted the stuttering until a friend pointed it out. I also started to notice the flat gray texture would cover the ground after opening the map or using a waypoint. I played another 100+ hours until finally deciding to try and fix the problem.

Absolutely nothing in the D4 video settings helped. I spent 3+ hours the other day systematically going through every single video setting one at a time, playing, testing, etc.. I also removed the high-res assets from the game install options to force low-res textures. Nothing helped keep the ash-mud (what I call it) flat texture problem from showing up.

Not sure why it took me so long, but I finally remembered the Lutris settings, so I started adjusting those. I tried all the Wine versions, but that did not effect much, and the texture problem still remained.

THE FIX: change VKD3D back to v2.8. After that I could use the high-res textures and adjust the video settings in D4 to get a solid 60 FPS. After a few 4+ hour sessions I have not had any problems and I can finally enjoy some smooth game play and decent graphics.

I systematically selected every version of VKD3D from v2.12 down to v2.8. EVERY version above v2.8 causes the texture problem to reappear, almost immediately upon loading the first area.

My currently working settings are: wine-ge-8-26-x86_64 (default), DXVK v2.3.1 (default), VKD3D v2.8, D3D Extras v2 (default), DXVK NVAPI v0.6.4 (default). I can also change the Wine version to any of the other options, and as long as VKD3D is set to v2.8, it works.

I did try a manual install of the nVidia drivers to the latest v550, but D4 would crash after a short time (minutes). I went back to the LTS installed driver.

In my frustration I did also buy a Radeon RX-7700-XT, but that just ended in misery. D4 literally took 80 seconds to display the "BLIZZARD" splash screen, and the game would crash within minutes. It also did not identify the video card, saying it was "AMD Unknown GFX1101". A friend running the RX-7700-S on a Framework-16 is also having crashing problems with D4. Seems the 7700 is too new to be stable?

I did make a lot of screen shots of the texture problem, and one of them (below), shows the texture as it is loading / being applied. It looks like maybe it is supposed to be a fog or particle affect, but some shader has gone wrong... IDK? But any time I would use a waypoint, when the new location loaded the normal ground was visible, then the ash-mud will appear on top.

d4_flat_11

Eeszlari 2024-10-25 github

In my frustration I did also buy a Radeon RX-7700-XT, but that just ended in misery. D4 literally took 80 seconds to display the "BLIZZARD" splash screen, and the game would crash within minutes. It also did not identify the video card, saying it was "AMD Unknown GFX1101". A friend running the RX-7700-S on a Framework-16 is also having crashing problems with D4. Seems the 7700 is too new to be stable?

Under Linux, AMD drivers are part of the kernel & Mesa. Your system (Kubuntu 22.04 LTS) is too old and doesn't include support for these newer cards. You will need to update you system.

Ddnotq 2024-10-25 github

Under Linux, AMD drivers are part of the kernel & Mesa. Your system (Kubuntu 22.04 LTS) is too old and doesn't include support for these newer cards. You will need to update you system.

Since I last posted, 24.04 LTS was released (Kernel 6.8.0-40-generic (64-bit)), which is what I am running now. I'm still running the nVidia RTX-4060-TI. The nVidia drivers continue to be the same:

$ nvidia-detector
nvidia-driver-550

But nvidia-settings indicates: Driver: 535.183.01, NVML: 12.535.183.01. Not sure what to make of that.

At any rate, a few nights ago I decided to try my luck with VKD3D version 2.13, and it seemed better, but as soon as I opened the map or used a waypoint, the flat texture / mud problem returned.

Any version of VKD3D above 2.8 continues to cause this problem. I tried some of the other Wine versions as well, but that was met with various levels of the game just not running, or crashing out. The most stable Wine version for me is: System (9.0 (Ubuntu 9.0~repack-4build3))

The game does seem to run better with the newer versions of VKD3D, so it is currently a trade-off: flat mud ground all the time but good game play, or nice ground textures but not so great frame rates and tearing.

Ddarksidewalker 2024-10-25 github

After some more testing I figured out a stable setup without any issues:

  1. bazzite os (fedora kde, fresh install)
  2. Latest GE-Proton 9-13/14/15
  3. NVIDIA Driver 560.35.03
  4. (optional) force main GPU in Lutris system options -> display -> GPU for battle.net
  5. (optional) extra environment variable for start: VKD3D_CONFIG = dxr
  6. Get GPU max memory glxinfo | grep -E -i 'device|memory'
  7. place a config-file /home/USERNAME/Games/battlenet/drive_c/Program Files (x86)/Diablo IV/dxvk.conf
dxgi.maxDeviceMemory=16376
dxgi.maxSharedMemory=16376
[Diablo IV.exe] dxvk.maxChunkSize = 4

No stutters. No missing textures. DLSS working, NVIDIA reflex working.
Gameversion Diablo 4 - 2.0.3.59036

Ffronald 2024-11-25 github

After some more testing I figured out a stable setup without any issues:

1. bazzite os (fedora kde, fresh install)

2. Latest GE-Proton 9-13/14/15

3. NVIDIA Driver 560.35.03

4. (optional) force main GPU in Lutris system options -> display -> GPU for battle.net

5. (optional) extra environment variable for start: VKD3D_CONFIG = dxr

6. Get GPU max memory `glxinfo | grep -E -i 'device|memory'`

7. place a config-file `/home/USERNAME/Games/battlenet/drive_c/Program Files (x86)/Diablo IV/dxvk.conf`
dxgi.maxDeviceMemory=16376
dxgi.maxSharedMemory=16376
[Diablo IV.exe] dxvk.maxChunkSize = 4

No stutters. No missing textures. DLSS working, NVIDIA reflex working. Gameversion Diablo 4 - 2.0.3.59036

Same problem. It just takes longer to occur.

Fedora 40, Lutris and GE Proton 9-20

MMrRoza 2024-12-02 github

I have the exact same problem with an rtx 3070 on Windows.
I guess it's just that VRAM is full, and it flows over to regular RAM. Probs not too much to do with this project, but more with the game itself.

Mmati865 2026-05-30 github

Different values of dxgi.maxDeviceMemory and dxgi.maxSharedMemory did not help me to get it smooth gameplay using Battle.net copy, I have confirmed that they were set correctly inspecting game logs.
dxvk.maxChunkSize appears to be removed from DXVK (I don't know if it even worked for VKD3D previously).

Here is memory reported by D4 with Nvidia GPU hidden:

I 2026.05.30 13:46:40.605297 26168	[Sigma] Device gpu total: 16376 MB, budget: 15197 MB, used: 11625 MB
I 2026.05.30 13:46:40.605339 26168	[Sigma] Device shared total: 71934 MB, budget: 71934 MB, used: 52 MB

And Nvidia GPU exposed:

I 2026.05.30 13:34:41.002225 13948	[Sigma] Device gpu total: 16376 MB, budget: 15161 MB, used: 15015 MB
I 2026.05.30 13:34:41.002235 13948	[Sigma] Device shared total: 71934 MB, budget: 71934 MB, used: 1110 MB

Whether thanks to updates or whatever but Windows VRAM usage is reasonable now; I didn't pay much attention to it previously. Even few hours long session (normal play, not just idling) doesn't consume more than 14 GiB of VRAM for me.

Using 3840x1600 res with ultra quality, no RT and Nvidia 4080 (16 GiB).

Windows dedicated VRAM, drivers 610.47:

Character list Character list after waiting about a minute Running in city for a minute
No reflex, no upscalling, no FG 13.6 12.3 13.7
Reflex, DLSS Balanced, no FG 13.5 12.2 13.4
Reflex, DLSS Balanced, FG x2 12.8 11.9 13.6

Shared VRAM remains ~1 GiB at all time when D4 is running and drops to 0.1 after exiting.

Linux dedicated VRAM, drivers 610.42.02, tested Proton Experimental and Proton Cachyos (this one with and without descriptor heap; posting numbers and logs for Proton Experimental):

Character list Character list after waiting about a minute Running in city for a minute
No reflex, no upscalling, no FG, exposed Nvidia GPU 15.6 14.7 15.8-15.9
No reflex, no upscalling, no FG, hidden Nvidia GPU 10.4 10.5 12.8

Possibly relevant things that I noticed in the logs:
In both Proton logs this warning is spammed over and over: 4562.441:07b0:0a18:warn:vkd3d-proton:d3d12_resource_QueryInterface: {6b3b2502-6e51-45b3-90ee-9884265e8df3} not implemented, returning E_NOINTERFACE.
Which appears to map to ID3D12Pageable::ID3D12Heap. I don't know DX12, but docs say this has something to do with GPU memory management.

There are many other missing DX12 APIs, but I suppose they aren't that important, because they aren't queried over and over.

4446.351:07b0:0920:warn:vkd3d-proton:d3d12_pipeline_state_init_graphics_create_info: DSV format is DXGI_FORMAT_UNKNOWN. dunno what it is, but I didn't see it with other games.

When Nvidia GPU is exposed to the game there are logs like:

4536.917:07b0:0a18:warn:vkd3d-proton:d3d12_low_latency_device_SetLatencyMarker: RENDERSUBMIT_START_NV is non-monotonic 10734 < 10735.

4536.919:07b0:0a18:warn:vkd3d-proton:d3d12_low_latency_device_SetLatencyMarker: PRESENT_START_NV is non-monotonic 10734 < 10735.

Also, the game logged some Nvidia related errors, along with unknown nvapi IDs in Proton's log:

E 2026.05.30 13:32:39.902645 0	[Game] [15-32-39][streamline][error][tid:1972][1s:025ms:413us]dlssEntry.cpp:878[slGetData] DLSSContext 'getOptimalSettings' returns invalid size (0 x 0), due to unsupported mode or output size

E 2026.05.30 13:32:54.600951 600	[Game] [15-32-54][streamline][error][tid:2260][15s:723ms:711us]commonInterface.h:518[get] Unable to find 'common' constants for frame 612 - id 0 - using last set for frame 611 - this needs to be fixed if occurring every frame

logs_linux_nvidia.zip

logs_linux_hidden_nvidia.zip

Proton versions

Launch options

Launch lines