Jump to content

Sign in to follow this  
Noel

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

Recommended Posts

Posted (edited)

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

Gerard

7940x ( 14 cores ) : 14 cores @ 4.7 - Gigabyte X299 Gaming 7 - 32 Gb G.Skill Trident Z 3200Mhz Cl 14 - Inno3D RTX3090 X4 iCHILL 24 Gb - 1x SSD M2 1800/1800 2TB - 2x  Sata 600 SSD 500 Mb - Thermaltake Level 10 GT case - EKWB Extreme 240 liquid cooling set push/pull - 2x 43” Sony 4K tv's in NVSurround

8700K : all 6 cores @ 5.0 GHz - Asus ROG 370 - 16 Gb 4000 MHz @ 3600 Mhz - Inno3D RTX 3090 X3 iCHILL 24 Gb  - 1x SSD M2 1800/1800 2TB - 2x  Sata 600 SSD 500 Mb - 1x 55” Sony 4K tv

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?


i9-9900K OC 5.0ghz, 32GB DDR4 3600 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.


i9 10850K / 32 GB 3200 MHz CL16 / RTX 3090

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.

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

i9 10850K / 32 GB 3200 MHz CL16 / RTX 3090

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
Posted (edited)

@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
Posted (edited)
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:  9900K@5.0Ghz@1.21v all cores, MSI MPG Z390M GAMING EDGE AC, Noctua NH-D15S, Corsair Vengeance 32Gb LPX 3200mHz DDR4, Sabrent NVme 2Tb x 2, RTX 2070 Super FE, Corsair RM 850W PSU, Win10 Pro, Dell curved 3440x1440, Saitek Yoke, TQ & Cessna Trim Wheel, UNLIMITED frames vSync to 30Hz in P3D 4.5 & MSFS.

 

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:  9900K@5.0Ghz@1.21v all cores, MSI MPG Z390M GAMING EDGE AC, Noctua NH-D15S, Corsair Vengeance 32Gb LPX 3200mHz DDR4, Sabrent NVme 2Tb x 2, RTX 2070 Super FE, Corsair RM 850W PSU, Win10 Pro, Dell curved 3440x1440, Saitek Yoke, TQ & Cessna Trim Wheel, UNLIMITED frames vSync to 30Hz in P3D 4.5 & MSFS.

 

Share this post


Link to post
Share on other sites
Posted (edited)

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.


i9 10850K / 32 GB 3200 MHz CL16 / RTX 3090

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?


I7 10700K 5.1 GHz / GTX 1080 8 Go / 32 Go RAM 3200MHz / MSI MPG490 Gaming Plus / Samsung 970Evo M.2 500Go.

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:  9900K@5.0Ghz@1.21v all cores, MSI MPG Z390M GAMING EDGE AC, Noctua NH-D15S, Corsair Vengeance 32Gb LPX 3200mHz DDR4, Sabrent NVme 2Tb x 2, RTX 2070 Super FE, Corsair RM 850W PSU, Win10 Pro, Dell curved 3440x1440, Saitek Yoke, TQ & Cessna Trim Wheel, UNLIMITED frames vSync to 30Hz in P3D 4.5 & MSFS.

 

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.
  • Donation Goals

    AVSIM's 2020 Fundraising Goal

    Donate to our annual general fundraising goal. This donation keeps our doors open and providing you service 24 x 7 x 365. Your donation here helps to pay our bandwidth costs, emergency funding, and other general costs that crop up from time to time. We reset this goal every new year for the following year's goal.


    48%
    $12,200.00 of $25,000.00 Donate Now
×
×
  • Create New...