Jump to content

With new FPS counter in 2.8 how to tell if it's GPU or CPU bottleneck?


Recommended Posts

Following. Which frame time line is for which? I *think* green is GPU, and white is CPU?

Ryzen 7 5800X3D / Asus Crosshair VI Hero X370 / Corsair H110i / Sapphire Nitro+ 6800XT / 32Gb G.Skill TridentZ 3200 / Samsung 980 Pro M.2 / Virpil Warbrd base + VFX and TM grips / Virpil CM3 Throttle / Saitek Pro Combat pedals / Reverb G2

Link to comment
Share on other sites

  • 1 month later...

I was looking for the answer to this one, too. I've gotten into both CPU and GPU limited situations (verified with other tools like FPSVR and the OpenXR toolkit), and in both cases, the white line seems higher. So I'm not totally sure what it's telling me right now. I would be very interested to hear something definitive.

Link to comment
Share on other sites

You can use the Windows Task Manager or MSI Afterburner tool to monitor GPU and CPU load.

The internal DCS tool only shows the total FPS (top scale) and Latency (bottom scale) in ms for the Frame (White), Simulation (Green) and Present (Yellow). I have no clue what Present is for. This won't help identify your bottleneck.

You can hover over with your mouse to see the numbers:

image.png   image.png

You are GPU bottlenecked if your GPU utilization hits 95-100% with uncapped framerate (no V-Sync enabled in 2D, no ASW/Motion Reprojection in VR enabled). This is the ideal case you should aim for. So this means the GPU pushes hard to get all possible FPS on the screen and there is no GPU-headroom left. CPU and game engine could possibly render more, but the GPU is the limiting FPS-factor.  You could reduce some graphics settings in-game and should gain some more FPS if this is your goal. This would look like this in MSI Afterburner:

image.png

You are CPU bottlenecked / engine bottlenecked when you have uncapped framerate (no V-Sync enabled in 2D, no ASW/Motion Reprojection in VR enabled) but the GPU utilization will not max at 95-100%. This is the difficult part. In This case it could be CPU limiting (2 cores maxed out at 100% load for DCS - difficult to see because the task scheduler changes the currently used cores frequently) or the engine of DCS is limiting itself. We all know the DCS engine does not run very well with a lot of units on the map, so keep that in mind. This would look like this in MSI Afterburner:

image.png

If you play in VR you should test this always with uncapped framerate - this means no ASW / motion reprojection enabled. Otherwise the FPS could get capped at your motion reprojection target (45 fps when 90 hz display is used for example) and the lower gpu load would be normal, because the gpu will not push higher above 45 fps until it could reach 90 fps technically. This implies your GPU is strong enough to go higher than 45 fps. If the GPU cannot even reach the motion reprojection target of 45 fps, the GPU utilization would max at 100% out for example with 38 fps.

Framerate (and Frametime) can also be monitored in MSI Afterburner:

image.png

Especially the frametimes (this is the consistency of rendered frames) are important in VR- huge spikes cause visual stuttering and can cause nausea. ASW or Motion Reprojection does not work very well on high-player-count multiplayer servers in DCS. Often the frametimes are all over the place in multiplayer compared to singleplayer. You can literally feel those spikes in VR:

image.png

So the more even and smooth (perfect would be a straight line) the frametime, the better the VR experience.

Since DCS 2.8.2.35632 Open Beta (25.01.2023) the GPU utilization is all over the place especially in VR and I suspect a game engine bug with the rendering.

Very often the engine is the limiting factor and can not utilize the best GPU/CPU combinations out there. This also happens alot in recent AAA games, when there is no modern and proper multi-core support for the CPU inside of the game engine.

I would not bother investing too much time in optimizing DCS settings right now. If we are lucky, the 4 core Multi-threading is coming in the next months, also DLSS is coming to DCS hopefully this year. Also the changes for VR (Native OpenXR support and some improvements there) could be a welcoming game changer this year.


Edited by Tepnox
  • Like 2

Ryzen 7 5800X3D // 64 GB RAM // RTX 4090 // Quest Pro // Quest 3

Link to comment
Share on other sites

  • 4 weeks later...

There is only ONE possibility to find out if the GPU or the CPU is the bottleneck: by watching the frametimes of GPU and CPU. There will always be the risk that not all cores of the CPU and may be all pipes of the GPU really can be used. (And then the influence of the VSYNC.)
Therefor, it is not possible to find the bottleneck by using the CPU and GPU Utilization.

My problem is still that I don't know which frametimes are CPU-related and which are GPU-related. Especially if you are monitoring the second FPS monitor in DCS which shows you much more parameter/frametimes (Terrain, Mirrors, MFD, ...).

Could somebody help me? What does Simulation (CPU-related?) and Present (GPU-related?) stand for? I assume that Frame stands for the total frametime of each frame. If I add the frametime Present to Simulation the sum is less that the frametime Frame.


Edited by GKOver
Link to comment
Share on other sites

the basic counter is only basic. you can determine FPS with many formulas, websites, and software. With the latest DCS, and especially with VR, unless you have a newer higher end computer, you can count on every major component a bottleneck. Anything under one of the fastest video cards, any CPU that is not one of the fastest. SSD memory too. A motherboard that is not the fastest. Etc..etc... Then the big one is some sims rely on CPU, some on Graphics. Some on both. We picked a hobby that demands the best fastest computer. You can run not only 3D mark, but there are free software and websites that do benchmarks. IMHO

 

BTW, none of us DCS pilots knows when it will be optimized for CPU cores. Everyone only hopes and wishes.


Edited by Ramstein

ASUS Strix Z790-H, i9-13900, WartHog HOTAS and MFG Crosswind

G.Skill 64 GB Ram, 2TB SSD

EVGA Nvidia RTX 2080-TI

55" Sony OLED TV, Oculus VR

 

Link to comment
Share on other sites

  • 3 months later...
On 2/1/2023 at 11:54 AM, Tepnox said:

You can use the Windows Task Manager or MSI Afterburner tool to monitor GPU and CPU load.

The internal DCS tool only shows the total FPS (top scale) and Latency (bottom scale) in ms for the Frame (White), Simulation (Green) and Present (Yellow). I have no clue what Present is for. This won't help identify your bottleneck.

You can hover over with your mouse to see the numbers:

image.png   image.png

You are GPU bottlenecked if your GPU utilization hits 95-100% with uncapped framerate (no V-Sync enabled in 2D, no ASW/Motion Reprojection in VR enabled). This is the ideal case you should aim for. So this means the GPU pushes hard to get all possible FPS on the screen and there is no GPU-headroom left. CPU and game engine could possibly render more, but the GPU is the limiting FPS-factor.  You could reduce some graphics settings in-game and should gain some more FPS if this is your goal. This would look like this in MSI Afterburner:

image.png

You are CPU bottlenecked / engine bottlenecked when you have uncapped framerate (no V-Sync enabled in 2D, no ASW/Motion Reprojection in VR enabled) but the GPU utilization will not max at 95-100%. This is the difficult part. In This case it could be CPU limiting (2 cores maxed out at 100% load for DCS - difficult to see because the task scheduler changes the currently used cores frequently) or the engine of DCS is limiting itself. We all know the DCS engine does not run very well with a lot of units on the map, so keep that in mind. This would look like this in MSI Afterburner:

image.png

If you play in VR you should test this always with uncapped framerate - this means no ASW / motion reprojection enabled. Otherwise the FPS could get capped at your motion reprojection target (45 fps when 90 hz display is used for example) and the lower gpu load would be normal, because the gpu will not push higher above 45 fps until it could reach 90 fps technically. This implies your GPU is strong enough to go higher than 45 fps. If the GPU cannot even reach the motion reprojection target of 45 fps, the GPU utilization would max at 100% out for example with 38 fps.

Framerate (and Frametime) can also be monitored in MSI Afterburner:

image.png

Especially the frametimes (this is the consistency of rendered frames) are important in VR- huge spikes cause visual stuttering and can cause nausea. ASW or Motion Reprojection does not work very well on high-player-count multiplayer servers in DCS. Often the frametimes are all over the place in multiplayer compared to singleplayer. You can literally feel those spikes in VR:

image.png

So the more even and smooth (perfect would be a straight line) the frametime, the better the VR experience.

Since DCS 2.8.2.35632 Open Beta (25.01.2023) the GPU utilization is all over the place especially in VR and I suspect a game engine bug with the rendering.

Very often the engine is the limiting factor and can not utilize the best GPU/CPU combinations out there. This also happens alot in recent AAA games, when there is no modern and proper multi-core support for the CPU inside of the game engine.

I would not bother investing too much time in optimizing DCS settings right now. If we are lucky, the 4 core Multi-threading is coming in the next months, also DLSS is coming to DCS hopefully this year. Also the changes for VR (Native OpenXR support and some improvements there) could be a welcoming game changer this year.

 

DLSS in DCS, that's a game changer, is FCR also involved? Never heard of that one coming before.

Link to comment
Share on other sites

  • 3 weeks later...

Looking at the new framerate counter, mine says GPU BOUND (theor. fps: 2000.00). Can anyone explain?

Additionally, I'd planned to load into an instant action mission to test MSAA against SAA. First time I loaded in with 2 x MSAA and my fps was at 34, unusually low for me in 2D (I have laptop 3070 ti). I then exited and went to 4 x MSAA and this time my fps was at 58 (which is where I've limited it in nvidia control panel). However, after perhaps 10 secs or so at 58 fps, it then dropped back to 34 again. I then loaded in with 1.5 SAA, again my fps was 34.

My first thought was my GPU is throttling but temp is at 75. Doesn't seem excessively hot to me.

(I'm using MT preview by the way)

Checked the CPU and that was at 93 deg. could this explain my fps drop?


Edited by martinistripes

Valve Index | RTX 3070 Ti (Mobile) | i7-12700H @ 2.7GHz | 16GB RAM

Link to comment
Share on other sites

  • 5 months later...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...