Low performance in DOOM Eternal

Nvidia drivers 440.66.07 (beta) seems to have boosted performance in Wreckfest by maybe double. It’s still half of what I get in Windows (80-100fps vs 33-50 in linux) with:

  • 24 cars on screen
  • Ultra settings
  • Fairfield demolition

I also have an issue where if I don’t have g-sync enabled, then the steam overlay FPS counter seems to show a cap of half my max refresh rate (50 for 100hz screen), and it never seems to dip below 33fps. G-sync enabled appears to allow higher fps, and also never dips below 33fps. Because of this I’m quite uncertain of the actual impact or fps accuracy, but the game is feeling very smooth.

TL;DR: It seems the D:E fix also had a big impact on Wreckfest

Just got the driver installed and it’s running great. Now I can’t blame the frames for sucking. Sad!

I can confirm, this seems to have done the trick. I built my own RPMs for Fedora, if anyone else needs them please let me know.

Thanks nVidia for caring about us!

1 Like

Thank you for the quick fix!

Yeah they’re pretty responsive when something like this goes wrong. I found this forum is usually the quickest way to get something fixed.

While the 440.66.07 driver fixed the low performance issue (thanks for that, BTW), after some time playing the game I’m starting to see graphical glitches, such as flashing green lights and occasional geometry distortion. I’m pretty sure it’s not a hardware failure as the game runs without these issues on Windows on my system.

Maybe a video memory problem again but the other way around? What does nvidia-smi -q report about vmem usage in that case?

Because I mentioned in another reply above that Wreckfest performance was improved a lot with 440.66.07, I just tried the more recent driver version 440.66.08 and this seems have have boosted performance in Wreckfest yet more still, to nearly half of Windows (where it was 1/4 first, then 1/3 with last driver).

It doesn’t look like memory usage is the problem. nvidia-smi -q says:

    FB Memory Usage
    Total                       : 11016 MiB
    Used                        : 9403 MiB
    Free                        : 1613 MiB
    ...
    Process ID                  : 32036
        Type                    : C+G
        Name                    : DOOMEternalx64vk.exe
        Used GPU Memory         : 8000 MiB

Although the round value of 8000 MiB VRAM usage is peculiar. System memory is also fine: 6.1 of 16 GiB is used.

This is on RTX 2080 Ti without overclocking.

Hello,

I’ve encountered an interesting performance issue with the current 440.82 driver. For some weird reason it’s lower than it would be on Windows with the same game settings when running via Proton but… if the Steam overlay is active while in game, the GPU and RS meters turn from red to green.

I thought that it may be just a powermizer setting but it’s not. Something else happens when the overlay is active that causes rendering to actually be faster.

Linux:

Windows:

Sorry for the quality, I had to take these with my phone:

With Steam Overlay:

No overlay:

Update:

I recalled that I actually can have the Steam overlay active at all times. Just turn on the fps counter (Settings → In-Game → In-game FPS counter

I turned it on, left it in the bottom-right corner. It’s small and gray and doesn’t bother me at all. Result:

GPU and RS are back in the green, CPU in red just like on Windows.

Weird part is that when the overlay is not enabled, the bar showing CPU activity barely shows anything. So is the CPU not being asked to work hard which causes the GPU to “idle” or is it the other way around?

Sorry to revive an old thread but has there been a regression of this in 455.45.01?

Doesn’t matter if I go low or ultra nightmare - I get framerates from 25fps to 60fps at 1080p, which just seems way off.

I had almost the same problem. I have Doom Ethernal via Steam, and when I used PROTON_NO_ESYNC=1 it was working at around 25-30 fps at any settings or resolution. If you have that enabled, try it without it. When I deleted that from comamnd line, fps jumped to around 200-300.

I’m not setting PROTON_NO_ESYNC - the reason I’m asking if this is a regression is that, I appear to be using 800mb vram and in game it’s reporting that I’m using >6gb vram.

Yeah there’s definately something not right with vram usage:

Processes
GPU instance ID                   : N/A
    Compute instance ID               : N/A
    Process ID                        : 3255
        Type                          : G
        Name                          : /usr/libexec/Xorg
        Used GPU Memory               : 93 MiB
    GPU instance ID                   : N/A
    Compute instance ID               : N/A
    Process ID                        : 1037843
        Type                          : C+G
        Name                          : DOOMEternalx64vk.exe
        Used GPU Memory               : 725 MiB

^ That’s with all settings high, texture pool size: ultra nightmare, vsync off. Early on in the game I get 25-60, later stages it will drop to below 20; which is unplayable.

Very easy to reproduce as well, I did a system upgrade over the weekend, so fresh Fedora 33; installed driver, loaded up steam, installed Doom Eternal - same results.

Edit: Worth mentioning this is an Optimus device.

Invidia-bug-report.log.gz (1000.4 KB)

I’m curious whether this is specific to render offload. Can you please try switching to a display offload configuration to check whether performance is still bad?

I’m also curious whether it’s possible that Doom or Proton are accidentally using the Intel GPU for rendering. Can you please try temporarily removing /usr/share/vulkan/icd.d/intel_icd.*.json and then running the game?

@aplattner yes I’ve tried reverse prime, it doesn’t make a difference.

Also yes /usr/share/vulkan/icd.d only contains the nvidia config, as I already had to remove the others due to a bug in proton that overrides the VK_ICD_FILENAMES envar.

I mean I would take my above nvidia-smi output as a pretty clear indication that it’s running on my discrete gpu, that and the gpu utilisation being > 80%.

Isn’t this pretty telling of a vram allocation issue:

        Name                          : DOOMEternalx64vk.exe
        Used GPU Memory               : 725 MiB

Unless I’m missing something obvious?

It also seems to be localised to this game - the original Doom (2016) runs at 150+fps on vulkan and the vram usage reported in the game, is consistent with what I see outside the game in diagnostic tools.

I’d like to throw my experience in as well. I’m on Manjaro using the hybrid graphics (PRIME render offload using prime-run command). Everything worked fantastic in 440.XX level driver and then once I upgraded to 450 and/or 455 I saw a massive decrease in performance… to the point of dipping into the 20fps range.

I use an MSI GS65 Stealth Thin with 1070 Max-Q 8GB.

When I look at Doom Eternal’s performance info, the main delay is coming from the GPU at 15-20ms when idle. CPU is 5-10ms.

UPDATE:

I’ll add my graphics memory usage seems really low using nvidia-smi during gameplay:

±----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 492 G /usr/lib/Xorg 44MiB |
| 0 N/A N/A 99593 C+G DOOMEternalx64vk.exe 497MiB |
±----------------------------------------------------------------------------+

Did you try beta Vulkan?

The issue with PRIME Render Offload is fixed in the newly launched 470.42.01 Beta.