Jump to content
Sign in to follow this  
Noel

Dynamic Optimizer needed?

Recommended Posts

I'm noticing as I add more and more complexity it's become more common to have considerably poorer performance when landing at complex terminals.  Prior to installing Simple Traffic and Bejan's Seasons, and prior to traffic departures finally reappearing now post SU8, I could always predict where I needed to adjust Terrain and Object LOD in pre-flight in order to insure having a smooth landing upon arrival w/o the need to stop and adjust settings, which I really never like to do.  Today, flying out of KIAD in the 787-X HD, LOD's at 200/200, all else at Ultra, by 2-3 miles out from FSDT's KORD I could tell things were going to get dicey quickly.  So I stopped the sim, and dialed back LODs to 100/100, which I've never even come close to having to do previously.  KORD was very busy w/ lots of incoming and outgoing traffic, so it's no wonder there is a performance cost for this.  LOD 100/100 was certainly sufficient to avoid even a minor stutter.  What I find compelling about an dynamic optimizer for addressing this sort of thing is this:  when you go into options and change any settings as I did w/ the LODs, the change is done instantly, and there is no need to repaint the screen.  This is in stark contrast to P3D that would require a screen redraw and so increasing autogen or other seemed like it would be nye to impossible to execute dynamically.  That does not seem to be the case w/ MSFS, which to me suggests indeed variables *could* be altered dynamically w/ disrupting fluidity.  The closer you get to touchdown, the less LOD matters as this is largely obscured by near field buildings and scenery.  LOD is the biggest single factor affecting the main thread for my configuration.  Further, reducing LOD from 200 to 100 is not even perceptible to me on this last approach to KORD.  So to have this done in the background, with no need to stop the sim and adjust, seems like some relatively low hanging fruit to optimize performance.  I mean after all the idea of poorer performance at arrival v departure is a recurrent complaint for many in MSFS.

What do you think?  I bring it up to promote the idea because if this was as effective as it seems it could be, could have a significant market, what with the sim getting progressively more complex over time as complex addons increase, weather is enhanced further we hope, etc.

  • Like 13
  • Upvote 1

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

I absolutely agree. I don't know why something like that hasn't been included from the beginning. Me and others have suggested that more than a year ago already, but it has been ignored so far by Asobo unfortunately.

 

Edited by RALF9636
  • Like 2

Share this post


Link to post
Share on other sites

Yup. +1. Would be wonderful and definitely needed and I've also suggested it a number of times on the forums.

  • Like 1

Share this post


Link to post
Share on other sites

Not sure what it was called, but I think there was an addon for FS9 that pretty much reduced scenery complexity to 0 during crucial phases of flight. Can't remember what it was called. 

Share this post


Link to post
Share on other sites

Sounds like a good idea.  Probably best introduced into the software at the point where the engine and graphics settings are stable so you can do better optimization predictions.  Now may be a good time?

The XPlane one was called 3jpfs and used a lua script to dynamically adjust datarefs.  It worked pretty well, but could introduce stutters when the dynamic adjustments were made.  Everyone using a dynamic optimization scheme should go in with the understanding that stutters CAN occur.  To be fair, they werent terrible in 3jfp (your opinions may vary), and it did allow you to enjoy more detail in the foreground and extended draw distance in the background when you were in lower traffic areas, for example, without having to let go of the controls.

Share this post


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

Not sure what it was called, but I think there was an addon for FS9 that pretty much reduced scenery complexity to 0 during crucial phases of flight. Can't remember what it was called. 

yes, i remember it, i had it and it worked.

Share this post


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

Not sure what it was called, but I think there was an addon for FS9 that pretty much reduced scenery complexity to 0 during crucial phases of flight. Can't remember what it was called. 

Don’t remember the name anymore but I had it back then.

At approach scenery complexity was reduced in order to try keeping the used framerate…It worked quiet well.

P3D has FFTF Dynamic…

 

  • Like 2

13900 8 cores @ 5.5-5.8 GHz / 8 cores @ 4.3 GHz (hyperthreading on) - Asus ROG Strix Gaming D4 - GSkill Ripjaws 2x 16 Gb 4266 mhz @ 3200 mhz / cas 13 -  Inno3D RTX4090 X3 iCHILL 24 Gb - 1x SSD M2 2800/1800 2TB - 1x SSD M2 2800/1800 1Tb - Sata 600 SSD 500 Mb - Thermaltake Level 10 GT case - EKWB Extreme 240 liquid cooling set push/pull - 2x 55’ Sony 4K tv's as front view and right view.

13600  6 cores @ 5.1 GHz / 8 cores @ 4.0 GHz (hypterthreading on) - Asus ROG Strix Gaming D - GSkill Trident 4x Gb 3200 MHz cas 15 - Asus TUF RTX 4080 16 Gb  - 1x SSD M2 2800/1800 2TB - 2x  Sata 600 SSD 500 Mb - Corsair D4000 Airflow case - NXT Krajen Z63 AIO liquide cooling - 1x 65” Sony 4K tv as left view.

FOV : 190 degrees

My flightsim vids :  https://www.youtube.com/user/fswidesim/videos?shelf_id=0&sort=dd&view=0

 

Share this post


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

What do you think?  I bring it up to promote the idea because if this was as effective as it seems it could be, could have a significant market, what with the sim getting progressively more complex over time as complex addons increase, weather is enhanced further we hope, etc.

I could see a market for this.

MSFS could maybe use performance profiles.  For example, I could have one called "Heathrow", which would be a saved profile of settings for really busy airports (lots of density, lots of AI, etc.).   Lets say I'm simulating a bizjet flight from Chicago O'Hare to Branson MO -- KORD would be a high-demand area, whereas Branson's new airport would be low demand.  A way to quickly switch settings would be nice.  Also, vice-versa flight -- Branson to KORD, you could dial down the settings for your KORD landing, to avoid any performance problems there.

  • Like 2

Rhett

7800X3D ♣ 32 GB G.Skill TridentZ  Gigabyte 4090  Crucial P5 Plus 2TB 

Share this post


Link to post
Share on other sites

I agree performance profiles are worthwhile.  I think what's most import is the automated, background dynamic optimization so there is no need to stop to 'quickly switch settings'.  It's the 'stop' part that's the most problematic for me.  Exactly how to program it is u for grabs and it's easy to imagine a couple of approaches that would do this:

  1. Assess the rate of increase and absolute value of the MainThread in milliseconds, and when a preset threshold is reached Object and Terrain LOD is reduced until a specified lower threshold is reached.  This might be on approach.   Or...
  2. Assess proximity to the threshold bar of the runway you are vectored towards, and when say 4 miles out from touchdown and 3000' AGL O and T LOD are reduced to a preset lower limit, down from initial values at start of the flight, or something along those lines.
  3. Any number of other schemes to dynamically adjust LOD in real time, including perhaps frame rate.
  • Like 2

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
2 hours ago, Noel said:

I agree performance profiles are worthwhile.  I think what's most import is the automated, background dynamic optimization so there is no need to stop to 'quickly switch settings'.  It's the 'stop' part that's the most problematic for me.  Exactly how to program it is u for grabs and it's easy to imagine a couple of approaches that would do this:

  1. Assess the rate of increase and absolute value of the MainThread in milliseconds, and when a preset threshold is reached Object and Terrain LOD is reduced until a specified lower threshold is reached.  This might be on approach.   Or...
  2. Assess proximity to the threshold bar of the runway you are vectored towards, and when say 4 miles out from touchdown and 3000' AGL O and T LOD are reduced to a preset lower limit, down from initial values at start of the flight, or something along those lines.
  3. Any number of other schemes to dynamically adjust LOD in real time, including perhaps frame rate.

Seems like good ideas.

The lower you fly the less need for a high LOD value.  So this could be dynamically used to keep the framerate to a certain (realistic) minimum value….

  • Like 2

13900 8 cores @ 5.5-5.8 GHz / 8 cores @ 4.3 GHz (hyperthreading on) - Asus ROG Strix Gaming D4 - GSkill Ripjaws 2x 16 Gb 4266 mhz @ 3200 mhz / cas 13 -  Inno3D RTX4090 X3 iCHILL 24 Gb - 1x SSD M2 2800/1800 2TB - 1x SSD M2 2800/1800 1Tb - Sata 600 SSD 500 Mb - Thermaltake Level 10 GT case - EKWB Extreme 240 liquid cooling set push/pull - 2x 55’ Sony 4K tv's as front view and right view.

13600  6 cores @ 5.1 GHz / 8 cores @ 4.0 GHz (hypterthreading on) - Asus ROG Strix Gaming D - GSkill Trident 4x Gb 3200 MHz cas 15 - Asus TUF RTX 4080 16 Gb  - 1x SSD M2 2800/1800 2TB - 2x  Sata 600 SSD 500 Mb - Corsair D4000 Airflow case - NXT Krajen Z63 AIO liquide cooling - 1x 65” Sony 4K tv as left view.

FOV : 190 degrees

My flightsim vids :  https://www.youtube.com/user/fswidesim/videos?shelf_id=0&sort=dd&view=0

 

Share this post


Link to post
Share on other sites

I agree that we need an automatic optimization depending on where we want to fly. I find myself dropping my  terrain LOD if I fly in areas with add-on cities and airports. I wish I could just set the sliders to 100 and get smooth performance at every scenery, but even then, I still have to drop the LOD to avoid the dreaded panning sluggishness.

  • Like 1

A pilot is always learning and I LOVE to learn.

Share this post


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

I still have to drop the LOD to avoid the dreaded panning sluggishness

DJ, do you have Off Screen Terrain Precaching maxed?  Also, both that and NV Control Panel's Low Latency set to Ultra make panning always best.


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

Well, suggestions on what Dev might be interesting/capable of attempting this?  I have sent the concept to one, but there must be so many who could get into the SDK to do something like this.


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

P3D had an app that did this, I think it was called Dynamic FFTF, by… FSPS…? There was a variable that could be changed on the fly called FFTF, or fiber frame time fraction. That app would change it automatically along parameters that the user could set, allowing for smooth departures and arrivals, and good visuals at cruise.

I would be surprised if MSFS didn’t have a similar set of variables that apps could make use of, given the shared history between these platforms, unless, of course, this is something that LM made accessible on the fly only in P3D.


Benjamin van Soldt

Windows 10 64bit - i5-8600k @ 4.7GHz - ASRock Fatality K6 Z370 - EVGA GTX1070 SC 8GB VRAM - 16GB Corsair Vengeance LPX @ 3200MHz - Samsung 960 Evo SSD M.2 NVMe 500GB - 2x Samsung 860 Evo SSD 1TB (P3Dv4/5 drive) - Seagate Barracuda 2TB 7200RPM - Seasonic FocusPlus Gold 750W - Noctua DH-15S - Fractal Design Focus G (White) Case

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...