Jump to content
Sign in to follow this  
Noel

Anyone have a solid answer to this puzzling question? It's a bit long...

Recommended Posts

SteveW always has the best explanations, but in the end the reason I think it's so hard to pin down what works in that it is a completely dynamic situation where several resources become stressed at different times, so there is no one fix for all situations.  This is why I keep harping on a realtime app that can manipulate all the variables at play to deliver an optimal outcome based on what particular users value.  I guess the problem there is there are some variables that can't be changed on the fly as it were, pun intended.

 

While I'm here, I've held off on updating P3D from v3.0 since 9/2015 when I think I first upgraded.  If anyone knows, have subsequent releases fixed the big performance impact one can get in certain types of clouds?  This is a GPU killer and I guess has something to do w/ antialiasing being applied to the cloud textures in a way that is tough on resources and maybe doesn't add much to the finished visuals.  That might be a reason for me to upgrade, but I'm trying to hold off until P3D releases their alleged major change this year.


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

Just in case there's any doubt about what i'm saying about HT, here's section 6.2 from the Windows platform design notes:

 

 

"6.2 Improving Application Performance on Hyper-Threading-Enabled Systems

 

In general, multithreaded Windows applications perform better when running unmodified on an HT processor than they do on a similarly equipped single-threaded processor. To optimize the application performance benefit on HT-enabled systems, the application should ensure that the threads executing on the two logical processors have minimal dependencies on the same shared resources on the physical processor. With an understanding of how the application threads and processes utilize the shared resources on an HT processor, setting processor affinity to minimize competition for these system resources can help application performance."

 

 

Here's the section of the P3D documentation on what P3D does with core count:

 

"By default, Prepar3D will use all available processor cores. On machines with four or more cores, it will dedicate a core to rendering tasks. The easiest method for modifying the affinity mask is to open the windows calculator in programmer view, select the binary display mode, and flip the bits in the binary number displayed to select which cores the application should run on. Note that the cores are represented right to left."

 

 

When we examine what we get with four or more Logical Processors the main rendering task is at its leanest as it says in the docs there. Why would we then want to allow the second job to run on the second LP of that core as it would have to share it? We wouldn't is the obvious answer. We can do better moving job two along to the next whole core. Job two is the least active task of the four, the third and fourth jobs are data gatherers. If we allocate more than four LPs we get the background tasks in those data gatherers splitting up. We can allow that on those cores because we are not so fussy about when they finish. Even so when those are split there's more for those first two jobs to manage.

 

 

This theory indeed pans out when we have a good enough system to take accurate values from the simulator with essentially a repeatable test method.


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

Why would we then want to allow the second job to run on the second LP of that core as it would have to share it? We wouldn't is the obvious answer.

 

What's counterintuitive is when I look at 11,11,11,01,01,00 it makes me think only half of core 2 and 3 are available, whereas w/ 4092 both LPs are available in each core.   My sense was each LP stays separated work-wise from it's partner.  But I don't profess to understand any of it in any depth other than to get me in trouble!

 

I did try 4052 a little while ago and it seems the same as 4092, which is great, so hopefully it's a little better ;o)

 

What do we have to look forward to for highest end systems for this activity in 2017?  I may do an upgrade this year if the performance improvement is worth it as it's been almost 5y now and still going pretty strong.  Is SLI now a good idea w/ P3D?  What's the best 6+ core processor we have coming along that is OC friendly?


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

Remember that when you see both LPs on a core showing 100% each you know that they are both actually at 50% each. Certainly it's a difficult set of concepts to grasp no shame in finding this stuff counterintuitive.


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

no shame in finding this stuff counterintuitive.

Amen to that! Speaking as one with an 8-cored cpu, and best performance experienced with HT off and an AM 21760 (discovered by accident and, for whatever reason, appears to 'randomise' the core allocation for the main P3D thread each time the sim is started) which goes against everything we are taught, I couldn't be happier. Totally illogical and yet, for me, it works. For months now nothing has happened to persuade me to change and Steve knows I have tested extensively using other configurations. Strange beasts computers, no two are ever exactly alike.

 

Mike

Share this post


Link to post

I wouldn't necessarily be cautious about that. Odd sounding results can often be indicative of some other situation overruling the outcome, not necessarily for the worse, perhaps a maximum reached in some part of the system maybe. Or for example better performance with HT disabled could mean some kind of double spawned code when HT is enabled, a possible undesirable consequence of HT I mentioned before. The double size overspilling AM value does seem to cause the jobscheduler to allocate in an odd way rather than simply round-robin but I'm sure there will be some logic in it.


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

Well, I'm tickled.  I'm seeing much better total performance, and it was decent before except in spots.  The key was mostly going back to unlocking frames, but maybe the 4052 is even better too early to tell.


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

Wow, 4052 w/ unlocked frames has hugely improved even the worst situations in very significant ways--thanks!  No need for hardware upgrade at all, at this point in time ;o)  Thanks!


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

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