Jump to content
Sign in to follow this  
KL Oo

Performance AIG Traffic Controller VS PSXT

Recommended Posts

Hi All,

 

I ran a few tests today on the CPU main thread performance both AIG Traffic Controller and PSXT have within MSFS and what I noted was interesting.

Using the exact same scenario (no simulator reload) but comparing the performance between the two programs (using AIG models and repaints) showed PSXT seems to result in significantly higher main thread timings than AIG Traffic Controller.

Two screenshots to demonstrate. PMDG 737-700. Loaded into iniScenes EGLL using clear weather and parked at gate 246 with a view of most of the airport. I've used AI Companion to display the number of AI aircraft being depicted in the SIM and limited it to meet PSXT's number of 70 AI aircraft. So we've got the same number of AI, at the same airport in exactly the same conditions, just being injected by different software. All aircraft are parked/static at the time of the test.

 

4SvnAah.jpg

With AIG Traffic Controller I'm getting a pretty consistent 37/38 FPS and a main thread processing time of between 25 and 26ms.

 

UIxuFkC.jpg

Switching over to PSXT and with the same number of AI rendered (almost all parked static as you can see) I've dropped to 31/32 FPS and a main thread processing time of between 29 and 30ms.

 

So my question is given the same number of AI are being depicted, why is the main thread burden caused by PSXT so might higher than AIG Traffic Controller? I would have thought that given the sim is having to render the same number of objects (and none of them are moving) the performance impact would be more or less the same.

I replicated the same test at KLAX and YSSY with the same results - consistently higher mainthread and lower FPS using PSXT.

Clearly there are advantages between the two....just interesting in why the performance difference?

ANybody got any ideas? @Kaiii3 or @kiek

Cheers,

 

Edited by KL Oo

Kael Oswald

7950X3D / 64GB DDR5 6000 @ CL30 / Custom Water Loop / RTX 4090 / 3 x 50" 4K LCD TVs

Share this post


Link to post
Share on other sites
3 hours ago, KL Oo said:

...just interesting in why the performance difference?

That's quite simple to explain. You are "comparing  apples with pears" so to speak. 😉 

  • AIG TC spawns AI aircraft in the SIM and let the Sim do all do work (efficiently) based on the fight plan, whether the aircraft are standing still or moving.
  • PSXT spawns aicraft objects in the Sim and updates the position of it 30 times per second (with SimConnect calls) except for static aircraft, but in your test I see 1 live aircraft too,
    Besides that, PSXT calls Simconnect 5 times per second for a list of all aircraft in the Sim within the range set by the user, for information about their position, height above the ground etc, in order -amongst other things- to control the landing (flare and touch down) and take-off phases, or to discover whether they are out of range or not (the user may have changed it whille it was flying) and have to be removed. These calls are continuous, it does not matter how many aircraft there are or whether they are parked or not, The Sim gives back the info of all aircraft. Note that for the Sim there is no difference between a static parked aircraft object or an aircraft object in the air.

Thus the amount of SimConnect calls by PSXT is much higher then by AIG TC. These calls from external programs 'interrupt' the MSFS threads, and therefore slow it down a bit.

Seeing real live aircraft has its price. 

Edited by kiek

Share this post


Link to post
Share on other sites

Thanks Nico - Good and well explained answer. 

Are there any efficiencies to that can be made to reduce the number of calls? Or can you forsee any changes in SimConnect that may reduce the burden on the main thread from all these calls?

Cheers

 


Kael Oswald

7950X3D / 64GB DDR5 6000 @ CL30 / Custom Water Loop / RTX 4090 / 3 x 50" 4K LCD TVs

Share this post


Link to post
Share on other sites
17 minutes ago, KL Oo said:

Are there any efficiencies to that can be made to reduce the number of calls?

What do you think, after 7 years of development ? 😉

 

17 minutes ago, KL Oo said:

Or can you forsee any changes in SimConnect that may reduce the burden on the main thread from all these calls?

I cannot forsee but I hope MSFS/Asobo makes the Simconnect Api more efficient. 

Faster CPU's and more efficient scheduling between threads may help too.

 

However, 31 fps is not bad at all. 100 fps will not make the PSXT aircraft move more smooth (they are maxed at 30 fps).

It also helps not to max out all the sliders in your Sim.

 

 

Edited by kiek

Share this post


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

Thus the amount of SimConnect calls by PSXT is much higher then by AIG TC. These calls from external programs 'interrupt' the MSFS threads, and therefore slow it down a bit.

I am not fully sure about that. TC is "hammering" SimConnect with quite a few calls regular as well.

But I agree the way the internal Sim handles the AI is more CPU efficiant compared to any other 3rd party external software doing it.


AIGtechBanner_Kai_AVSIM.png

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