Jump to content
Sign in to follow this  
SledDriver

P3D multicore usage anomoly

Recommended Posts

21 minutes ago, SledDriver said:

I'm not an FTX user, and do't yet use PMDG, preferring GA flying, but I believe the DA-62 represents a reasonable load on the system. I intend adding PMDG some time soon, but the budget is blown for this month as I've just updated all my existing stuff from FSX to P3D. So I cannot yet compare.

Also I fly mostly in the UK where I prefer the realism and actuality of flying photo real scenery like my Horizons GenX VFR England/Wales/Scotland to FTX pseudo scenery. I also use UK2000 VFR Airports for GA flying in this area. The VFR scsnery I am using is 250GB of textures and models which the system loads smoothly even during the lowest fastest fighter jet flying. No blurries. No popup.

But I can't yet speak for how the planes measure up against your PMDG stuff., and I do see slowdowns at dawn/dusk, but not all the time. 

 What is your theoretical explanation

No particular theories. Just observations. For me in my scenarios I get better, smoother performance and consistent frame rates with the core0 disable/reenable tweak. I can't see any reason to stop doing it until somebody comes up with something which works better for me. Maybe my test is too weak. But the stuff I am running was pushing FSX to it's limits, and with these tweaks on x64 P3D it is all running lovely, apart from dawn/dusk.

 

 

Well the main thing is that for whatever you're running you have more than adequate horsepower clearly, regardless of what happens w/ how CPU utilization is reported.  My strong hunch is that indeed you haven't exposed the system to the kind of stress that will demonstrate, IMO definitively, if there is anything happening in terms of balanced multithreading which all wizards here will emphatically deny is possible, and strongly wish they were wrong!  As for 'better, smoother', I literally have perfectly smooth performance always...until Core1 (the main thread by default per LM) approaches 100% , or the GPU approaches 100% at which point that starts taxing the CPU as predicted.  

In any case Sled clearly it's an interesting finding w/ no explanation I can imagine that fits w/ the conventional wisdom about how the sim functions and this wisdom comes not from me but out of LM and our strongest tech folks here.  Search for user SteveW and run it by him and see what he says we might all learn something.

I'll try it myself and see what shakes out.   I will immediately be able to tell if there is anything there that represents real multithreading and will let you know how it goes.  Remind me of the simple procedure if you will...

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

Remove any affinity masks temporarily to ensure P3D is on Core0

Start all your sim software(s) including P3D.

Open TaskMan and go to Details tab.

Find Prepar3D.exe

Right click Prepar3D.

Disable Core0 and click OK to exit dialog box.

Re-oopen the same dialog box by right clicking Prepare3D again.

Re-enable Core0.

Exit dialog box.

Fly.

If you have an affinity mask and you are aware which core is taking the load of P3D main thread, then you can try as an option leaving the affinity mask in place and in the above procedure replace Core0 with the core you know is taking P3D.exe

Let me know what you find.

 

Share this post


Link to post
9 minutes ago, SledDriver said:

Remove any affinity masks temporarily to ensure P3D is on Core0

Start all your sim software(s) including P3D.

Open TaskMan and go to Details tab.

Find Prepar3D.exe

Right click Prepar3D.

Disable Core0 and click OK to exit dialog box.

Re-oopen the same dialog box by right clicking Prepare3D again.

Re-enable Core0.

Exit dialog box.

Fly.

If you have an affinity mask and you are aware which core is taking the load of P3D main thread, then you can try as an option leaving the affinity mask in place and in the above procedure replace Core0 with the core you know is taking P3D.exe

Let me know what you find.

 

Will do.  I use an AM for a couple of purposes:  to mask Windows processes, add-ons like GTN750, ASN, FSCaptain, etc away from P3D's cores and LPs.  This makes a huge difference in the responsively of those addons as they're not stuck competing for processing with the main thread when the main thread is taxed, and I would not want to lose that.  


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
38 minutes ago, SledDriver said:

Remove any affinity masks temporarily to ensure P3D is on Core0

Start all your sim software(s) including P3D.

Open TaskMan and go to Details tab.

Find Prepar3D.exe

Right click Prepar3D.

Disable Core0 and click OK to exit dialog box.

Re-oopen the same dialog box by right clicking Prepare3D again.

Re-enable Core0.

Exit dialog box.

Fly.

 

I tried it one more time... sitting still on the tarmac at FlyTampa KTPA.

Core0 close to 100%, Core1-7 very low load after the scenery has loaded.

Applied your procedure, and the heavy load is now on Core1.  No other changes observed although the GPU load has increased.

 


Bert

Share this post


Link to post

although the GPU load has increased.

Yes I notice this after doing the core tweak. It's not logical. 

Share this post


Link to post

It is not illogical at all if your FPS increase. When that happens, the GPU obviously has to work harder than before to process more frames per second, thus the GPU load will be higher.

Share this post


Link to post
29 minutes ago, Afterburner said:

It is not illogical at all if your FPS increase. When that happens, the GPU obviously has to work harder than before to process more frames per second, thus the GPU load will be higher.

FPS are not increasing. Locked at 30.

Share this post


Link to post

It's a fascinating phenomenon for sure.  I was able to duplicate the findings overall with some interesting caveats discovered.  The first thing that was evident was that performance in a setting that IS NOT taxing the system (as previously setup) to max responded overall quite well to the appearance of more balanced workloads in all six cores.  I had done this exact flight 5x times over the past 2 days in learning the GTN750 so I was very familiar with how taxing it would be.  At the gate at FTX KPSP in the Phenom 300, 4.42Ghz, HT off, balanced core trick executed and verified, taxiing to the runway apron was quite smooth, however w/ some very slight hitches as I looked at near field objects like fencing and nearby palm trees.  Every few random seconds a very slight hitch.  I remember this very same behavior when I turned HT off a month or so ago at this very same airport and taxiway, but in a different plane so I went back to my default setup of HT on since then.  Frame rate dropped down briefly to 27 for several seconds after TO then stayed at 30 for the next 30 min or so OTW north towards KLAX via SB Riverside areas.  I was impressed by the fact core temps had gone down more than just what disabling HT typically results in.  And geez core utilization was shocking low--30-40% often.  So for the type of flight I had done several times recently as mentioned this configuration worked quite well, comparable, but not quite as smooth as mentioned.  I do not get those hitches w/ my default config it's liquid smooth all the time...until either CPU or GPU approaches 100%, then predictably frames begin to diminish and stuttering commences.  I do get the rare solid hang in ultra complex scenery as well.

Then we set up the acid test that Sled is not able to duplicate I'm quite certain else he would have seen generally similar results, skewed up for his 40% faster rig.  We flew at around 3000-6000 ft with ALL sliders hard right, 50 miles out from KLAX going past Temecula area over the mountains:  ALL traffic 100%, scenery sliders all 100%, cloud density maxed out to 110 miles.  I stopped and saved my flight at that spot so I could compare total performance at real peak demand.  Very different outcome.  After a clean boot, W/ HT off and magic balancing trick applied, it took a good 60 or more seconds to load the massive scenery, 100% road traffic on all those SoCal freeways, yeesh!   And then the show was a veritable slide show w/ frames down to 14-18, and weirdly, the 6 cores never really went past 85% tops despite the very low frame rate.  IAll GPU stress was minimized so we were only seeing 60% GPU utilization w/ how my GPU-related sliders are setup.  Scenery update rate was not very good as well even after the scenery loaded a minute later.  Ran cooler than w/ my default by about 6-10C.   Why?  Well easy!  It's not doing as much work!  Could be doing some work more efficiently in some ways however.

So after a clean reboot and re-enabling HT and applying my default AM for my CPU the difference was dramatic, and is corroborated by that 6-10C increase in temp:  that same scene loaded in just a couple seconds, was razor sharp, and frames chugged along at 30 for several minutes then it eventually succumbed to the massive stress of that area of FTX SoCal, and frames got down to 18 briefly then would recharge back up to high 20's to 30.  Both configs were unusable, but my default config was far superior in that type of super taxing scenario. 

That being said it's a fascinating phenomenon and I it might well be worth using it for lower stress flights as it may save some heat, though even w/ that workload on 12 LPs we only got to only 67C on a few cores.   I think what Sled is experiencing is exactly what I thought it was:  he's got a 40% more potent CPU and likely GPU?, and this on top of lower total processing demand yields very nice performance.   Stress the system to the max however and I'm guessing that lovely balanced utilization will not solve poor video performance at all, and will in fact show to be much less capable of handling the highest complexity scenarios.   Were this magic trick truly enabling multithreading it would have been the opposite story by a long shot--my configuration would have been far poorer, far, but indeed it turned out much better, and once again this is sort of corroborated by heat as a surrogate for work.

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

My GPU is a ASUS GTX980TI Strix factory overclock, so it's good but not great.

My CPU is an 8700K delidded, custom overclocked to 5GHz all 6 cores (HT off), and no AVX offset (so 5GHz with AVX, all the time, so that is pretty good.

I'm sure there is much more performance to be had from P3D than what I am currently getting - overall CPU 66-70%, GPU 70-80%, but the real telling fact is that my CPU cores are all varying from 50-70degC, usually around 60 with the fans only running at 65%, and the GPU is sitting at 77degC with its fans only at 50%. So whatever is going on, it's not straining my system anywhere near it's potential at present.

Noel, could you let me know your key system/P3D settings and what you are doing with all the affinity masks/core assignment for all the various sim progs you are running, so I can try what you are doing on my rig and see how it compares with my other attempts?

I'm really all ears on this to find out what is really going on.

 

Edited by SledDriver

Share this post


Link to post

I don't think it's any special phenomenon. Probably something simple in his setup.

My guess is the cpu is parking cores or throttling due to OS settings, and disabling and enabling of a core might temporarily disable/confuse the performance management so it stays at max frequency.

Do you know your cpu frequencies sled? And monitored them before and after the disable/enable?

Share this post


Link to post
9 hours ago, SledDriver said:

Noel, could you let me know your key system/P3D settings and what you are doing with all the affinity masks/core assignment for all the various sim progs you are running, so I can try what you are doing on my rig and see how it compares with my other attempts?

I'm really all ears on this to find out what is really going on.

The AM I'm using and have for a couple of years has worked well to improve scenery loading and to allow other apps to run w/o tangling up w/ P3D's main and terrain texture loading so as such looks like this binary:  11 11 11 11 01 00    From my understanding of SteveW's comments you're not preventing the main thread from using the whole physical core 1 when you set up the AM as 01 and this is preferred for technical reasons he advised.  If you want to see if HT enabled might be worth heat here is a simple test:  go to an ultra complex scenario (just go to KSEA and put all of your scenery and traffic sliders hard right) and save the flight.  Close P3D.  Now restart P3D and load the saved flight.  See how long it takes to load w/ HT off, then on.   HT on was the clear winner here w/ the AM I use.

I will manually assign affinities for any other significant running processes to the 1st pair of LP's.  You really notice the difference in the response times of input into those apps.  For example, while flying thru that complex scene yesterday where the main thread (LP 3,4) was in the high 90% range the GTN750's buttons were very slow to respond--I had forgotten to mask LP 3-12 for the GTN and once I did voila fully responsive again.  This approach, IMO, isn't really the basis of smooth video performance though it all contributes.   Also, my 3930K is going to run a lot cooler than your 8700K, so whether or not you need to run w/ HT on you'll have to investigate to see if it's worth the added heat.

IMO, the most significant basis for ultra smooth video performance is a bit of a small compromise but I'm willing to put up with it until such time horsepower improves a bunch more, so it's the best I can do w/ a 6 y/o CPU and GPU:  it comes from running frames unlocked in the sim, setting VSYNC on in the sim, then outputting to a screen set for 30mHz vertical refresh.   I don't notice it any more than I notice movies running at 24mHz, but it's a compromise over what it would be were it locked at 60mhz or greater.

So it's a very simple matter to try:  AM=4084, unlimited rate internally, VSYNC on.  That's all there is to it! Nothing else is required--no fiber frame value, no nothing else.  Perfect video performance until you hit the nearly fully utilization then that's all she wrote.  Sounds like you just don't have the heaviest loads to process, so quite likely you could do fine w/ HT off, whereas I need all the processing help I can find.  My next box if this one ever dies will be 9900K w/ a 2080Ti or at least a 1080Ti.

Edited by Noel
  • Like 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

FYI Sled -- I have an 8700K as well, and I start my add-ons with batch files with affinity to move them away from Core0 and 1 as Noel mentions he does.

I have noticed in my Win10-64 install that it will thread P3D strangely if I start playing with the affinity of the P3D app via Task Manager.  I've even seen it shift the main thread (normally on Core0) to Core3 without my requesting it do so.  I usually get best results with HT=on.  There is some strangeness with HT=on and the way to OS and P3D interact, that I have never quite figured out.  That may explain why 8 physical core cpu owners generally report best results with HT=off.  By "best results" I mean smoothness.


Rhett

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

Share this post


Link to post

After all the fiddling around searching for the magic solution for over a decade to get rid of micro-stutters and more it was shocking to see how effective the simple strategy of VSYNC to 30mHz refresh monitor leaving the sim unlimited internally was.  I always had better luck w/ unlimited frames in FSX, overall.  In terms of smoothness and freedom from stutters this was the complete solution.  It of course does not solve inadequate total processing power but you will do the best you possibly can with it IMO.  So I'm mindful to set up flights such that my 6y/o machine can handle it.  Most all the other tweaks were chasing mirages and wishful thinking.  One utility I have posted several times here in the hopes some tech person would take it on to develop is to create a utility that can modulate, in particular, GPU-relate attributes, during runtime.  For example the Lighting sliders, for example terrain and cloud shadows, hugely impact my older GPU.  It would fabulous if one could set a minimum GPU % utilization and then have the utility modulate how far the distance shadows are cast to maintain that minimum GPU.  The screen does not need repainted for those.  No takers so far!


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

Thanks for all that guys. I will be doing more tests later today.

Noel/Mace, could you just confirm what method you are using to limit the fps to 30? RTSS? Other?

Share this post


Link to post
2 hours ago, SledDriver said:

Thanks for all that guys. I will be doing more tests later today.

Noel/Mace, could you just confirm what method you are using to limit the fps to 30? RTSS? Other?

If you have vsync at 30fps enabled you dont need to limit your framerate, vsync will do that for you.

Share this post


Link to post
Guest
This topic is now closed to further replies.
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...