protonscr

BL2 randomly enters fps hell out of nowhere after a while and I need to restart the game to fix it. dxvk 2.5.3

dxvkclosed performanced3d9
doitsujin/dxvk#4695 · opened 2025-02-18 by Alignment2289 · updated 2025-02-23 · 11 comments · github
AAlignment2289 2025-02-18 github

https://youtu.be/c6mqp2UwM4k

This has also happened by starting the game and just being afk in windows, then tabbing in to see the fps is fucked.

Also: Setting PhysX to Medium/High crashes the game right after having clicked continue from the menu.
Yes I ofc restart the game after increasing the PhysX setting.

If a log is required, I need to know the name of the file.

BBlisto91 2025-02-18 github

If a log is required, I need to know the name of the file.

Borderlands2_d3d9.log

AAlignment2289 2025-02-19 github

If a log is required, I need to know the name of the file.

Borderlands2_d3d9.log

Borderlands2_d3d9.log

Today I also tried playing with 120 hz + 120 capped fps in bl2 and it doesn't happen.
However it does feel unsmooth and laggy at times, which I don't understand..
It's mostly nice and clean but then it feels weird and off. Even though the fps stays at like 117 or something when that is happening,

I usually play on 144 hz with unlimited fps but that is when it suddenly triggers that fps drop hell state.

Win 11
MSI B650 Tomahawk WIFI
32 GB RAM
Ryzen 7 7800X3D
RTX 4070 TI 12 GB

BBlisto91 2025-02-19 github

We do not support the async version of dxvk here. Please try with the latest release of standard dxvk. Incase you haven't already tried.
In regards to "unsmooth and laggy" does it go away once you've played in a area for some time?

AAlignment2289 2025-02-22 github

We do not support the async version of dxvk here. Please try with the latest release of standard dxvk. Incase you haven't already tried.

I know, The other person in my previous thread said it, But why are you also mentioning the async ?
Isn't the dxvk 2.5.3 NOT the async version ? I'm so confused by this.
Please link me to the one I should be using so I won't have to wonder if I'm using the right one.

In regards to "unsmooth and laggy" does it go away once you've played in a area for some time?

Update about this: 120 fps doesn't apparently matter as the fps drop from hell still occurs with that.
No, it does not seem to go away after a while. However it's gone right after a restart.
It's exactly like the memory leak or whatever issue in BL1 GOTY edition.

The unsmooth and laggy is something that seems to happen randomly and doesn't really last long.
However when the fps drop occurs, it's laggy pretty much all the time, except for when looking at specific spots or whatever.

If you want, I can record with CapFrameX and show you with some values how the cpu, gpu etc operates before and after the fps drop shit

KK0bin maintainer 2025-02-22 github

I know, The other person in my previous thread said it, But why are you also mentioning the async ?

The logs you uploaded say version 2.0-async. That's both the unsupported async version and ancient.
Just get the latest version from here: https://github.com/doitsujin/dxvk/releases

Try setting up a config file called dxvk.conf in your user directory and add this to it:
d3d9.cachedDynamicBuffers = True.
Then see if that helps with the performance issue. (Also please upload a log from when you test that so we can make sure you didn't make a mistake setting up the config file.)

AAlignment2289 2025-02-23 github

The logs you uploaded say version 2.0-async. That's both the unsupported async version and ancient. Just get the latest version from here: https://github.com/doitsujin/dxvk/releases

How is that even possible when the file I already have in D:\Program Files (x86)\Steam\steamapps\common\Borderlands 2\Binaries\Win32 is the SAME d3d9.dll FILE as you recommended I download ?!

I already deleted everything about async .

Try setting up a config file called dxvk.conf in your user directory and add this to it: d3d9.cachedDynamicBuffers = True. Then see if that helps with the performance issue. (Also please upload a log from when you test that so we can make sure you didn't make a mistake setting up the config file.)

You mean the way you made a mistake by not telling me where the user directory is located and expected me to just know ?
I will do what you want, but I need to know where and not just wonder if I've put the dxvk.conf file where I THINK it should be :)

Btw: I wonder if it is related to too many items on the screen, because it happened again now as I was farming the Warrior. No issues after killing him like 3 times but then suddenly the last time now when he exploded, so did the fps and all lag broke loose.

KK0bin maintainer 2025-02-23 github

First of all, watch your tone. You are asking for support here so there's no reason to get sassy when we are trying to help.

How is that even possible when the file I already have in D:\Program Files (x86)\Steam\steamapps\common\Borderlands 2\Binaries\Win32 is the SAME d3d9.dll FILE as you recommended I download ?!

It's what your log says. So you either messed up installing the official DXVK DLL or sending us the right log. Pick one.

You mean the way you made a mistake by not telling me where the user directory is located and expected me to just know ?
I will do what you want, but I need to know where and not just wonder if I've put the dxvk.conf file where I THINK it should be :)

I told you where.

in your user directory

Btw: I wonder if it is related to too many items on the screen, because it happened again now as I was farming the Warrior. No issues after killing him like 3 times but then suddenly the last time now when he exploded, so did the fps and all lag broke loose.

That's possible but it shouldn't be that extreme. Your video goes from 250 FPS to sub-60.

NNukem9 2025-02-23 github

I was told to add this here, but after watching the original post's video and my own video I think there's separate issues at play.

On Windows 10 with PhysX enabled Borderlands 2 exhibits large stutters in certain scenes. Here's a video demonstrating them. The worst of it is towards the end of the benchmark.
Borderlands2_d3d9.log

Using d3d9.cachedDynamicBuffers = True alleviates the majority of said stuttering. However it also tends to reduce the average framerate in certain areas (~130fps -> ~110fps).


I ended up profiling BL2 before finding this issue so maybe the following screenshot will prove useful to someone later. Note the PCIe write requests:

image

  • PhysX on + cachedDynamicBuffers off = screenshot above.
  • PhysX off + cachedDynamicBuffers off = write requests reduced by ~95%.
  • PhysX on/off + cachedDynamicBuffers on = write requests almost completely eliminated.
77AllenWalker7 2025-02-23 github

@Nukem9
Can you check the performance for the enabled rbar?
Without d3d9.cachedDynamicBuffers = True

Image

AAlignment2289 2025-02-23 github

First of all, watch your tone. You are asking for support here so there's no reason to get sassy when we are trying to help.

I get that the "so we can make sure you didn't make a mistake" is something you probably tell all users who come here for support, because you simply can't know their knowledge in pc etc. However I do find it ironic that you add that after having just said: User directory. Because I don't know where that is and with an unclear explanation like that, I thought it was weird and uncalled for to assume I would make a mistake. Seeing how I don't know where that is and would just have had to guess + how to even make a conf file you know ? Should I make a notepad file or text file and then name it dxvk.conf ?

If you don't see that you didn't make it easy for me to follow what to do, then okay but it really isn't.
So if I had tried what I would have thought to be correct, then yeah there would probably be a high chance of making a mistake. Which I still feel you did by assuming I know where that is and how to make that file :)

It's what your log says. So you either messed up installing the official DXVK DLL or sending us the right log. Pick one.

No I did not and I don't appreciate you telling me I did something wrong just from your own assumption.
How can I have done something wrong when all there is to do is to replace the d3d9.dll file with the one in binaries/win32 with the one from the dxvk 2.5.3 ? Which like I said was already the correct file ?

I would like you to step by step tell me what to do instead of blaming me by thinking I must have done something wrong.

If I didn't pick the right log, that is solely on @Blisto91, because they are the one who told me what file to provide.

I told you where.

No you didn't.
You said: user directory and that is not where. That is you assuming I know where that is, not the location of it.

That's possible but it shouldn't be that extreme. Your video goes from 250 FPS to sub-60.

I have heard of something like this before and I found this: https://www.nexusmods.com/borderlands2/mods/81
At the bottom of the page you see the creator says: 500 FPS dropped to 40 with loot.
So perhaps it could actually just be that.

Ddoitsujin maintainer 2025-02-23 github

Closing because clearly we're more focused on arguing instead of trying to work out if there's an actually actionable issue here.

DLLs