Jump to content
Sign in to follow this  
RobJC

DLSS: More ways to fine-tune performance

Recommended Posts

I give, most everyone is CPU limited what is the purpose of reducing image quality thru DLSS in order to lower workload on the GPU?  Or is it that is also decreased workload on the CPU?


Noel

System:  7800x3D, Thermal Grizzly Kryonaut, Noctua NH-U12A, MSI Pro 650-P WiFi, G.SKILL Ripjaws S5 Series 32GB (2 x 16GB) 288-Pin PC RAM DDR5 6000, WD NVMe 2Tb x 1, Sabrent NVMe 2Tb x 1, RTX 4090 FE, Corsair RM1000W PSU, Win11 Home, LG Ultra Curved Gsync Ultimate 3440x1440, Phanteks Enthoo Pro Case, TCA Boeing Edition Yoke & TQ, Cessna Trim Wheel, RTSS Framerate Limiter w/ Edge Sync for near zero Frame Time Variance achieving ultra-fluid animation at lower frame rates.

Aircraft used in A Pilot's Life V2:  PMDG 738, Aerosoft CRJ700, FBW A320nx, WT 787X

 

Share this post


Link to post
Share on other sites
9 minutes ago, Noel said:

I give, most everyone is CPU limited what is the purpose of reducing image quality thru DLSS in order to lower workload on the GPU?  Or is it that is also decreased workload on the CPU?

Change SecondaryScaling to 2.0 and you will quickly become GPU limited. 

  • Like 1

AMD Ryzen 9 7950X3D | RTX 4090 | 48GB DDR5 7200 RAM | 4TB M.2 NVMe SSD | Corsair H150i Liquid Cooled | 4K Dell G3223Q G-Sync | Win11 x64 Pro

Share this post


Link to post
Share on other sites

An easier way to look at this is your graphic cards renders, then posts. In my case i have a 2560 x 1440 display. Using “balanced” settings DLSS only renders 1485 x 835 pixels, then upscales it to 2560 x 1440. Put another way, instead of rendering 3.68 million pixels, DLSS only renders 1.24 million, then does some magic to efficiently upscale it. But…those 2.4 million pixels can’t really be regained accurately via upscaling. Hence, blurry graphics.

I am no expert on this stuff, but if you increase the rendering resolution you are going to get better image quality. Btw, this works with TAA as well, and it allows you to shift the load from your CPU to your GPU, if your system needs that. Of course, you could also reduce SecondayScaling if you have resolution to spare, which might be the case with 4k. 
 

 


AMD Ryzen 9 7950X3D | RTX 4090 | 48GB DDR5 7200 RAM | 4TB M.2 NVMe SSD | Corsair H150i Liquid Cooled | 4K Dell G3223Q G-Sync | Win11 x64 Pro

Share this post


Link to post
Share on other sites

I have fps to spare. Am using DLSS Quality. I would like to have an unofficial 'Super Quality' option to make things look better. Not worried about losing some f.p.s., would not care about that.

So, do I change usercfg.opt setting of Secondary Scaling to more than 1.000 or less than 1.000 to get better image, never mind the fps loss?

 


Ryzen5 5800X3D, RTX4070, 600 Watt, TWO Dell S3222DGM 32" screens spanned with Nvidia surround 5185 x 1440p, 32 GB RAM, 4 TB  PCle 3 NVMe, Warthog throttle, CH Flightstick, Honeycomb Alpha yoke, CH quad, 3 Logitech panels, 2 StreamDecks, Desktop Aviator Trim Panel.

Share this post


Link to post
Share on other sites

Increase it. Try 1.25 first. I have not gone higher than 2. 

  • Like 1

AMD Ryzen 9 7950X3D | RTX 4090 | 48GB DDR5 7200 RAM | 4TB M.2 NVMe SSD | Corsair H150i Liquid Cooled | 4K Dell G3223Q G-Sync | Win11 x64 Pro

Share this post


Link to post
Share on other sites
1 hour ago, Noel said:

I give, most everyone is CPU limited what is the purpose of reducing image quality thru DLSS in order to lower workload on the GPU?  Or is it that is also decreased workload on the CPU?

They are increasing the DLSS image quality, not reducing it.  There is a gap between DLSS Quality Setting and full TAA where some people can find a sweet spot that improves their displays.  Not everyone is CPU limited. 4k with less than a 3080 can easily be GPU limited for a GA flyer.  VR is GPU limited for most people.  The 5800x3D easily hits 60 FPS in everything but the Fenix at most non large airports, but the GPU if it's not a 4090 can limit you around 50 FPS in regional airports.  DLSS Quality can lock at 60 FPS in those situations but the aircraft displays suffer.  You have too much head room with DLSS quality and this hack allows you to create a setting between DLSS quality and full TAA.

  • Like 3
  • Upvote 1

Share this post


Link to post
Share on other sites
3 minutes ago, TravelRunner404 said:

They are increasing the DLSS image quality, not reducing it.  There is a gap between DLSS Quality Setting and full TAA where some people can find a sweet spot that improves their displays.  Not everyone is CPU limited. 4k with less than a 3080 can easily be GPU limited for a GA flyer.  VR is GPU limited for most people.  The 5800x3D easily hits 60 FPS in everything but the Fenix at most non large airports, but the GPU if it's not a 4090 can limit you around 50 FPS in regional airports.  DLSS Quality can lock at 60 FPS in those situations but the aircraft displays suffer.  You have too much head room with DLSS quality and this hack allows you to create a setting between DLSS quality and full TAA.

Exactly. 

  • Like 1

AMD Ryzen 9 7950X3D | RTX 4090 | 48GB DDR5 7200 RAM | 4TB M.2 NVMe SSD | Corsair H150i Liquid Cooled | 4K Dell G3223Q G-Sync | Win11 x64 Pro

Share this post


Link to post
Share on other sites
5 hours ago, jrw4 said:

Thanks to @RobJC for being so thorough in his analysis, but I still don't understand why I get the blurries in DLSS while TAA is just fine.

With Developer mode open look at the render resolution of DLSS Quality and compare it to TAA. You will see that TAA renders 1:1 with your screen resolution, while DLSS Quality renders at 67% of your screen resolution. That is where your blurry issues come from. SecondaryScaling is a way to increase the render resolution beyond 67% without using TAA at 100%. 

  • Like 1

AMD Ryzen 9 7950X3D | RTX 4090 | 48GB DDR5 7200 RAM | 4TB M.2 NVMe SSD | Corsair H150i Liquid Cooled | 4K Dell G3223Q G-Sync | Win11 x64 Pro

Share this post


Link to post
Share on other sites
4 hours ago, RobJC said:

An easier way to look at this is your graphic cards renders, then posts. In my case i have a 2560 x 1440 display. Using “balanced” settings DLSS only renders 1485 x 835 pixels, then upscales it to 2560 x 1440. Put another way, instead of rendering 3.68 million pixels, DLSS only renders 1.24 million, then does some magic to efficiently upscale it. But…those 2.4 million pixels can’t really be regained accurately via upscaling. Hence, blurry graphics.

I am no expert on this stuff, but if you increase the rendering resolution you are going to get better image quality. Btw, this works with TAA as well, and it allows you to shift the load from your CPU to your GPU, if your system needs that. Of course, you could also reduce SecondayScaling if you have resolution to spare, which might be the case with 4k. 
 

 

I get how DLSS and scaling work, but I still don't understand where this secondary scaling comes into it. What you're describing sounds like primary scaling...

Is this how you understand the process works both with and without DLSS?

Without DLSS using primary scaling...

  • Your display resolution is 1440p
  • You set resolution scaling (primary scaling) in game to 58%
  • The GPU renders the frame at 835p
  • The GPU upscales this without any processing to 1440p to match your display
  • The result is a blurry mess but great FPS since the GPU is only rendering a fraction of the pixels.

Now with DLSS...

  • Your display resolution is 1440p
  • You set resolution scaling (primary scaling) to 100%
  • DLSS2 is set to Balanced
  • The GPU renders the frame at 835p
  • The GPU then upscales this with AI processing to 1440p to match your display
  • The resulting image is less blurry than without DLSS, but it's still a bit blurry as the AI is not perfect. The FPS is great because the GPU is only rendering a fraction of the pixels.

Again with DLSS but with added scaling...

  • Your display resolution is 1440p
  • You set resolution scaling (primary scaling) to 150% (2160p)
  • DLSS2 is set to Balanced
  • The GPU renders the frame at 1252p (58% of 2160p)
  • The GPU then upscales this with AI processing to 1440p to match your display
  • The resulting image may be less blurry than the case above, but the performance isn't going to be as great since the GPU is rendering more pixels.

Where in this process does your Secondary Scaling come in, and what does it do exactly?

My assertion is that there's really only one scaling opportunity for rendering, and that's decided before the frame is rendered. I guess some post processing like sharpening and filtering could be applied at a super sampled resolution... is that what this secondary scaling is?  If so, it's not affecting what DLSS is doing or the resolution DLSS is working with. That's decided by the primary scaling.

Edited by Virtual-Chris

Share this post


Link to post
Share on other sites

I messed with PrimaryScaling but never witnessed that parameter actually doing anything. The only values that did anything were the SecondaryScaling value and the DLSS setting (Quality, Performance, etc.). In your examples above SecondaryScaling does what you believe PrimaryScaling was doing. It looks like the one scaling opportunity is accomplished with this parameter, and not with the PrimaryScaling value. I will try to test PrimaryScaling more tomorrow but i suspect that parameter does nothing. 
 

 


AMD Ryzen 9 7950X3D | RTX 4090 | 48GB DDR5 7200 RAM | 4TB M.2 NVMe SSD | Corsair H150i Liquid Cooled | 4K Dell G3223Q G-Sync | Win11 x64 Pro

Share this post


Link to post
Share on other sites

Why no mention of the DLAA option? All the niceness of DL anti-aliasing without any of the scaling nonsense. (Needs DX12 and SU11). 

Share this post


Link to post
Share on other sites

RobJC, I don't know how to thank you for this post. I can't say I fully understand the mechanics of these settings but I get the gist. I'm running a 2080ti and tuned my secondary secondary scaling to 1.65, DLSS balanced. Just teetering on the border of a main thread/gpu limit. Getting an amazingly smooth experience on the ground at CYVR for the first time. I'm talking stutter free! Not 100% sure what's going on, but without your info, I would have missed this massive improvement. Thanks.

  • Like 1

Share this post


Link to post
Share on other sites

@RobJC Thanks for your efforts on this thread.  I am watching it closely while doing my own experimentation where I can.

Slightly irrelevant compared to the main subject matter, but I edited my PosX and PosY positions to 1.  It is probably just the desktop start position in windowed mode, but I always run full screen anyway, which should go to X1, Y1, by default.

  • Like 1

Call me Bob or Rob, I don't mind, but I prefer Rob.

I like to trick airline passengers into thinking I have my own swimming pool in my back yard by painting a large blue rectangle on my patio.

Intel 14900K in a Z790 motherboard with water cooling, RTX 4080, 32 GB 6000 CL30 DDR5 RAM, W11 and MSFS on Samsung 980 Pro NVME SSD's.  Core Isolation Off, Game Mode Off.

Share this post


Link to post
Share on other sites
4 hours ago, redshift27 said:

Why no mention of the DLAA option? All the niceness of DL anti-aliasing without any of the scaling nonsense. (Needs DX12 and SU11). 

This works with that option, too. It is just another way to get finer control of the render resolution. 


AMD Ryzen 9 7950X3D | RTX 4090 | 48GB DDR5 7200 RAM | 4TB M.2 NVMe SSD | Corsair H150i Liquid Cooled | 4K Dell G3223Q G-Sync | Win11 x64 Pro

Share this post


Link to post
Share on other sites
2 hours ago, bobcat999 said:

Slightly irrelevant compared to the main subject matter, but I edited my PosX and PosY positions to 1.  It is probably just the desktop start position in windowed mode, but I always run full screen anyway, which should go to X1, Y1, by default.

Actually (and I'm being pedantic here...) the top left corner is X0, Y0. Not that one would notice a 1 pixel difference with today's resolutions. 😉

...jim

  • Like 1

ASUS Prime Z790-E, Intel i9 13900K, 32Gb DDR5 Ram, Nvidia 3090 24Gb, Samsung 970 EVO Plus 500 GB and 1 TB, Samsung Odyssey G9 Ultrawide 49" G-SYNC Monitor.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Tom Allensworth,
    Founder of AVSIM Online


  • Flight Simulation's Premier Resource!

    AVSIM is a free service to the flight simulation community. AVSIM is staffed completely by volunteers and all funds donated to AVSIM go directly back to supporting the community. Your donation here helps to pay our bandwidth costs, emergency funding, and other general costs that crop up from time to time. Thank you for your support!

    Click here for more information and to see all donations year to date.
×
×
  • Create New...