Jump to content

GPU performance improvement suggestion: redundant clear UAVs


_picon

Recommended Posts

Hi,

I noticed through RenderDoc that the frame rendering starts out roughly with a bunch of ClearUnorderedAccessViewUint calls. They actually take some GPU time, on the order of 0.4ms on a 3060 Ti. But it seems half of them are redundant, so each buffer is cleared twice with the same value. It would make sense to only clear them once, or so I think... Should hopefully be a small/easy fix, with a measurable GPU performance improvement. 

My settings was "high", and the latest Stable release was used (2.8) 

Best Regards.

  • Like 5
  • Thanks 4
Link to comment
Share on other sites

  • 3 weeks later...

I can provide more details if needed, like the entire capture (but it is fairly big!), but this a screenshot of my capture. The "Copy/Clear Pass #1" (expanded) contains a number of ClearUnorderedAccessViewUint calls. If one looks at the resources involved, most are cleared twice, with the same data. (while one is at it, it might be worth looking into if it is necessary to do the clears at all, or if the data is totally overwritten later by compute shaders)

image.png


Edited by _picon
(spelling mistake)
  • Like 1
Link to comment
Share on other sites

  • 6 months later...
  • 1 month later...

I just made my usual 4K benchmark. There is a 0.5% overall performance increase, which is of course within margin of error. HOWEVER.

The 0.1% fps increased about 25%. Which is great. I don't now if this tweak is responsible. But I just wanted to give some feedback.

17-12-2023, 12:19:12 DCS.exe benchmark completed, 19164 frames rendered in 139.610 s
                     Average framerate  :  137.2 FPS
                     Minimum framerate  :  124.2 FPS
                     Maximum framerate  :  161.8 FPS
                     1% low framerate   :  117.0 FPS
                     0.1% low framerate :   80.0 FPS

19-12-2023, 19:09:35 DCS.exe benchmark completed, 19278 frames rendered in 139.594 s
                     Average framerate  :  138.1 FPS
                     Minimum framerate  :  123.1 FPS
                     Maximum framerate  :  161.4 FPS
                     1% low framerate   :  119.5 FPS
                     0.1% low framerate :  101.1 FPS

  • Like 2
  • Thanks 2

"Muß ich denn jedes Mal, wenn ich sauge oder saugblase den Schlauchstecker in die Schlauchnut schieben?"

Link to comment
Share on other sites

On 11/10/2023 at 8:20 PM, _picon said:

Thanks. Perhaps it makes sense to just confirm the same thing doesn't pop up in the new Vulkan based engine.

Looks like this was addressed in the update on 19th. Maybe you can test with RenderDoc again to verify the implementation.

https://www.digitalcombatsimulator.com/en/news/changelog/openbeta/2.9.2.49629/

Perhaps the issue depends on a particular scene-s, which the benchmark by Hiob might not cover. Then again, small fixes aren't to be shrugged off, they all add up eventually, but it's still a good idea to scrutinize this to determine whether it had the fullest effect.


Edited by Worrazen

Modules: A-10C I/II, F/A-18C, Mig-21Bis, M-2000C, AJS-37, Spitfire LF Mk. IX, P-47, FC3, SC, CA, WW2AP, CE2. Terrains: NTTR, Normandy, Persian Gulf, Syria

 

Link to comment
Share on other sites

@Worrazen My Benchmark scene for sure doesn't cover all aspects. For one, it doesn't feature mirrors or video feeds and no AI for example.

However, I don't think that this fix is supposed to make a major impact on average fps. But I saw a significant raise in 0.1% low fps. And this is where (micro-)stuttering e.g. occurs.

There are of course a multitude of different reasons possible for such things to improve, but this is exactly the kind of improvement I would expect from such a tweak.

And the results are pretty consistent. Of course in the 0.1% lows there is always some variability, but the average over multiple runs is close to a 100, whereas it was ~80 on avg. beforehand. I would consider this a win. 

  • Like 3

"Muß ich denn jedes Mal, wenn ich sauge oder saugblase den Schlauchstecker in die Schlauchnut schieben?"

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 months later...
  • Recently Browsing   0 members

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