Jump to content
Sign in to follow this  
Noel

Runtime Performance Optimizer App--I'd happily pay for it!

Recommended Posts

If you can change settings now without the need of having to reload the sim than it should be possible.

When showing the FPS you also see the Main thread load, GPU load, etc. Based on that automatically changing settings to maintain a smooth experience would be very welcome....

i can imagine that the 2 LOD sliders are the first that have an impact. When on the ground and flying low ( up to 2500 ft ) you don’t need a LOD like when flying higher. When flying higher the airport and traffic are out of sight so higher LOD settings are possible.

Lower resolution clouds when on the ground than when flying with the clouds around you.

And there are more sliders that have their influence.

Edited by GSalden
  • Upvote 1

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 think the LOD slider is the one that has impact the most, especially at the CPU side and it can be a good start point. Reading the FPS, we can figure that out. However, I know there is this config file UserOpt or something like that? If you manipulate that file while MSFS is running, does the effect take place immediately or do you need to hit pause?


AMD Ryzen 7 7800X3D, 64GB DDR5 6000MHZ RAM, RTX 2080Super 

Share this post


Link to post
Share on other sites
12 hours ago, marsman2020 said:

Some modern games do this as part of the game engine.  You pick a target FPS and they adjust either render scaling or detail level items automatically to maintain it.

I'm very surprised that MS/Asobo didn't include it in MSFS as a native feature. 

They do that with dynamic resolution scaling, which is performed very efficiently by modern GPUs.

But MSFS performance problem is not caused by GPU bottleneck. Stuttering and pauses are induced by CPU bottlenecks and loading of assets from RAM and even the Internet. The parameters that the engine would have to change dynamically and in real time are LOD sliders, traffic, draw distances, and in any case you would still have texture streaming and downloading of photogrammetry areas.

Rather than that I would wish an intelligent engine that takes advantage of the overhead in terms of CPU threads, Internet bandwidth, RAM and VRAM in order to preload all the assets in a large area surrounding the aircraft. We would see our 20 thread CPUs, 64 GB of RAM, 24 GB of VRAM and 300 Mbit Internet much more used and that would be the end of the stutters and pauses.


7800X3D | 32 GB DDR5-6000 | RTX 3090 | Acer Predator X34P GSync | Tobii Eye Tracker 5 | Completed all achievements 😛 https://i.postimg.cc/DyjR8mzG/image.png

Share this post


Link to post
Share on other sites

The end of stutters, pauses, CPU bottlenecks?  LOL  We are in this seemingly never ending software hardware battle cycle. Started way back but most pronounced starting with FSX.    Software sim can produce so much more yet no one flies even close to all out max.   Then hardware catches up, and what comes next..... a software with breaking new tech and features comes out that pushes it way further and once again hardware is struggling to keep up. This will happen when we are reaching 256gb of ram as standard machines, on a 10ghz 64 thread CPU, and the RTX Super Mega Max 9090 with 64gb of Vram. 


CYVR LSZH 

http://f9ixu0-2.png
 

Share this post


Link to post
Share on other sites

Isn't this what Dynamic resolution does in other Games? 

But to your OP i'd cough up 100$ more for a sim that doesn't need any extratool or function to reduce settings in order to work properly. Just get the optimization going instead of adding unnecessary features.


Intel i9-13900K | Gigabyte Z790 Aorus Master | RTX4090 | 2x16GB Corsair Vengeance DDR5-6000 | Be quiet! Pure Loop 2 FX AiO | Win 11

Share this post


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

The end of stutters, pauses, CPU bottlenecks?  LOL  We are in this seemingly never ending software hardware battle cycle. Started way back but most pronounced starting with FSX.    Software sim can produce so much more yet no one flies even close to all out max.   Then hardware catches up, and what comes next..... a software with breaking new tech and features comes out that pushes it way further and once again hardware is struggling to keep up. 

This was the case with FSX but with FS 2020 it's different. Now we have 1 thread only maxed out out of 16-32 in modern CPUs, 16 GB out of 64+ of RAM and 4-8 GB of VRAM occupied out of 24 GB in the flagship nVidia card. The hardware is now more advanced than the software, it's just the software that is very badly optimized. 

It was born DX11 in 2020 and considering Asobo's statements regarding a "modest performance increase" with DX12, no mention of DXR and DLSS, you already know that the implementation of DX12 will be far from state of the art and that's disappointing because the hardware is there, they just have to take advantage of it.

  • Like 1

7800X3D | 32 GB DDR5-6000 | RTX 3090 | Acer Predator X34P GSync | Tobii Eye Tracker 5 | Completed all achievements 😛 https://i.postimg.cc/DyjR8mzG/image.png

Share this post


Link to post
Share on other sites

MSFS definitely uses more then one thread.  If you look at it in a more in depth program like Process Explorer you can see where it spawns a whole bunch of threads.

 

 


AMD 3950X | 64GB RAM | AMD 5700XT | CH Fighterstick / Pro Throttle / Pro Pedals

Share this post


Link to post
Share on other sites

@marsman2020 many threads (sleeping) doesn't mean multi-thread (work task scheduler) though!

You might want to try this:

  • Launch FS2020, jump to the cockpit
  • Enable developer mode and open the fps window
  • Note the fps and the general histogram trends.
  • Open Task manager
  • Set Affinity to Flight Simulator.exe to only 3 or 4 cores
  • Return to FS2020 window and note if there is any difference in the fps window.

I don’t see any from 8C/8T to 4C/4T on my 9700K…

FS2020 is using at a minimum only 1 main thread for most of computations and the game loop, 1 thread for DirectX, and 1 to n thread(s) for disk access and network. Therefore it runs as good on 3 cores, and any additional one just helps when downloading new assets or preparing vertex buffers.

The main bottleneck is a singular big thread doing the bulk of the job per frame and the faster single core speed, the better fps in flight simulator. All other thread/core activity is most likely small tasks spawning in the task scheduler (not the Win10 one, the internal game own work task scheduler) and overall represented as “some” activity on all remaining cores.

By comparison and as far as I know, and I should know, XP11 multi-core tasking system is actually one of the many improvements XP11 benefits from (and not just for VR and Vulkan).

Quickly found with my search engine:
https://developer.x-plane.com/2017/05/three-performance-optimizations-for-x-plane-11-02/

And here is the main developer blog “Threading” articles:
http://hacksoflife.blogspot.com/search/label/Threading

PS: I didn't find screenshots readily available but when you run XP11 you can see all cores are running really high, whereas when running FS2020 you mostly see 1 (and actually if you have HT the wrong one for the task in my opinion, but maybe things have changed in the latest Intel CPUs)

 

Edited by RXP
  • Like 1

Jean-Luc | reality-xp.com
This message from Reality XP is protected by a disclaimer: reality-xp.com/aboutrealityxp/email.html

Let your voice be heard and help us make a difference for you: Vote !
Open up communications with Reality-XP (Microsoft Flight Simulator Forums)

Share this post


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

@marsman2020

PS:...when you run XP11 you can see all cores are running really high

Jean-Luc, do you know what this looks like when you run vsync to 30hz?  I use Process Lasso to view 8 core usage and I see lots of activity on the 7 cores I use--in MSFS I mean to say.

Edited by Noel

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
15 minutes ago, Noel said:

Jean-Luc, do you know what this looks like when you run vsync to 30hz?

I'm not sure to understand the meaning of your question?!


Jean-Luc | reality-xp.com
This message from Reality XP is protected by a disclaimer: reality-xp.com/aboutrealityxp/email.html

Let your voice be heard and help us make a difference for you: Vote !
Open up communications with Reality-XP (Microsoft Flight Simulator Forums)

Share this post


Link to post
Share on other sites
10 minutes ago, RXP said:

I'm not sure to understand the meaning of your question?!

If you use vsync to 30Hz, both GPU and CPU are no longer processing more than required to maintain 30fps, whereas when you don't restrict frame rate with this method (and perhaps some others) you will see CPU & GPU trying to generate maximum possible frame rate, so those values will typically always be higher than when you limit frames by vsync to 30.  Even though I do vsync to 30Hz, I still see lots of activity on the other cores besides the main thread core in MSFS.  I've never looked at per core utilization w/o vsync to 30Hz, so just curious when you said, "but when you run XP11 you can see all cores are running really high" I was curious if this was in a frame-limited state as described, or not.


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

Ok I guess I see what you mean. There will be always some or a lot of varying activity on other threads if the game is using multi-threading in a very simple FSX way. That is 1 main thread doing the bulk, the others sleeping until woken up to do what they are assigned to do.

FS2020 is spawning a lot of threads which are most of thee time waiting and this sounds to me like it is a basic use of threads: spawn 1 thread per task, wake the thread to when the task needs to be done. You'll see activity varying among cores from depending on when a thread wakes up and run and which core Windows is pinning it to.

XP11 is implementing a task scheduler, where it tries maximizing the "awake" state for all the threads and only spawns as much threads as the number of cores. Tasks therefore are fine grained small processing entity and what matters is not they run on a single thread, but they run concurrently with other tasks regardless of the core they are running onto. This is what maximizes your core utilisation and the game throughput, and if effectively well used, this will show as nearly all cores evenly running near full utilisation constantly.

Edited by RXP

Jean-Luc | reality-xp.com
This message from Reality XP is protected by a disclaimer: reality-xp.com/aboutrealityxp/email.html

Let your voice be heard and help us make a difference for you: Vote !
Open up communications with Reality-XP (Microsoft Flight Simulator Forums)

Share this post


Link to post
Share on other sites
9 hours ago, marsman2020 said:

MSFS definitely uses more then one thread.  If you look at it in a more in depth program like Process Explorer you can see where it spawns a whole bunch of threads.

 

 

Maxed out, not used.

One thread only is maxed out, the other 19 (in my case) are used at 10-25%. The thread which is maxed out acts as a bottleneck. This bottleneck limits the performance to less than 30 fps in the most demanding situations, whereas for conventional games, if you put them in CPU limited situations they deliver 2-300 fps.

That's why dynamic resolution scaling would have a limited benefit for MSFS.


7800X3D | 32 GB DDR5-6000 | RTX 3090 | Acer Predator X34P GSync | Tobii Eye Tracker 5 | Completed all achievements 😛 https://i.postimg.cc/DyjR8mzG/image.png

Share this post


Link to post
Share on other sites
On 5/12/2021 at 11:31 AM, MrFuzzy said:

no mention of DXR and DLSS, you already know that the implementation of DX12 will be far from state of the art and that's disappointing because the hardware is there, they just have to take advantage of it;

Is it sure they won't put DLSS on?

Share this post


Link to post
Share on other sites
On 5/12/2021 at 6:43 PM, RXP said:

Ok I guess I see what you mean. There will be always some or a lot of varying activity on other threads if the game is using multi-threading in a very simple FSX way.

My clear impression has been P3D and presumably FSX use the non main-thread cores for terrain texture loading, and this is why you see them oftentime exceed main thread utilization when in busy metro areas, etc.


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

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