Skip to content
View in the app

A better way to browse. Learn more.

The AVSIM Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

P3D V5.4 High CPU Usage & Temps

Featured Replies

Personally, I wouldn't go fiddling with CPU voltage.  Just let the BIOS control it on AUTO.

P3D is a CPU hog and always has been.  Like I said, mine goes to 90% load at times while flying, but it does drop down after a minute or so.  I think it uses a lot of CPU power to load the scenery, and once it's loaded the usage goes back down for a while.

P3D sets my cgf affinity mask to use all 16 cores by default.  Even with the stock AF and all 16 cores used, I still get the high CPU load at times.  I changed the AF to exclude only core 0.

Dave

Simulator: P3Dv6.1

System Specs: Intel i7 13700K CPU, MSI Mag Z790 Tomahawk Motherboard, 32GB DDR5 6000MHz RAM, Nvidia GeForce RTX 4070 Video Card, 3x 1TB Samsung 980 Pro M.2 2280 SSDs, Windows 11 Home OS

My website for P3D stuff: https://sites.google.com/view/thep3dfiles/home

  • Replies 196
  • Views 75.8k
  • Created
  • Last Reply
  • Moderator
1 hour ago, dave2013 said:

I changed the AF to exclude only core 0.

That is extremely important. If you assign core 0 and core 1 to P3D you’re fighting with the OS.

Ray (Cheshire, England).

System: P3D v5.3HF2, Intel i9-13900K, MSI 4090 GAMING X TRIO 24G, Crucial T700 4Tb M.2 SSD, Asus ROG Maximus Z790 Hero, 32Gb Corsair Vengeance DDR5 6000Mhz RAM, Win 11 Pro 64-bit, BenQ PD3200U 32” UHD monitor, Fulcrum One yoke, Fulcrum Throttle Quadrant.

Cheadle Hulme Weather website.

chlive.php

2 hours ago, Ray Proudfoot said:

That is extremely important. If you assign core 0 and core 1 to P3D you’re fighting with the OS.

Ah, so should I exclude core 1 also?

Thanks.

Dave

Simulator: P3Dv6.1

System Specs: Intel i7 13700K CPU, MSI Mag Z790 Tomahawk Motherboard, 32GB DDR5 6000MHz RAM, Nvidia GeForce RTX 4070 Video Card, 3x 1TB Samsung 980 Pro M.2 2280 SSDs, Windows 11 Home OS

My website for P3D stuff: https://sites.google.com/view/thep3dfiles/home

Dave-

This is the stock AM.

 

[JobScheduler]
AffinityMask=65535
P3DCoreAffinityMask=65535
MainThreadScheduler=0
RenderThreadScheduler=2
FrameWorkerThreadScheduler=4

Try this and see what the result is.

I have a 12900k and after hours of ******* around with various combinations and exclusions it’s working very well. Win11 does an excellent job of threading on its own. You can always go back.

I just did the update from 5.3HF2 to 5.4 this last weekend.  CPU utilization does indeed seem to have taken a markedly different path in this version.

I have been running P3D with VSync on to a 30Hz display for years, which has limited CPU utilization on the heaviest tasked core running the main thread to down around 70%.  With 5.4, that core is pegged at 100% pretty much all the time, and the other cores (including the 10 e-cores enabled for P3D via the affinity mask) are also being fairly heavily tasked, especially when airborne.  So the temps and voltages are indeed averaging higher than before, but it's not causing a problem--in fact, the opposite.  It raised my eyebrows when I first saw it, but the sim is running very smoothly like this without any of the stuttering I would have expected from keeping the main core loaded up like that.  I just flew the FSL Scarebus into FlyTampa's KBOS, which has always been a challenge performance-wise, and it was very smooth despite the main thread's core being firewalled at 100% the whole way in.

I suspect that if your cooling isn't up to having most of your CPU's cores getting a real workout a lot of the time, it might cause CPU temp issues where 5.3 did not due to its much less aggressive usage of multithreading.

On my water-cooled 13900K, with 20 cores active and 18 allocated to P3D (AM=262143), I'm seeing temps venturing into the mid 70s C on the core running the main thread, which is about 8-10 deg C higher than I saw with 5.3.  Some of the other cores are occasionally bumping into the high 60s and low 70s.  The cores specifically allocated to the render thread and frameworker thread are not being tasked noticeably higher than the others like they used to...most of the cores are getting hit concurrently now, and fairly often.  It's anyone's guess as to whether the thread scheduler masks are now being ignored, or if their workload has been redistributed in such a way as to make their load levels indistinguishable from their peers.

 

Bob Scott | President and CEO, AVSIM Inc
ATP Gulfstream II-III-IV-V

Sys1 (MSFS20+24/XPlane12+11): AMD 9800X3D, water 2x240mm, MSI MPG X670E Carbon, 64GB GSkill 6000/30, nVidia RTX4090FE
Alienware AW3821DW 38" 21:9 GSync, 2x4TB Crucial T705 PCIe5 + 2x2TB Samsung 990 SSD, EVGA 1000P2 PSU, 12.9" iPad Pro
Thrustmaster TCA Boeing Yoke, TCA Airbus Sidestick, Twin TCA Airbus Throttle quads, PFC Cirrus Pedals, Coolermaster HAF932 case

Sys2 (P3Dv5/v4): i9-13900KS, water 2x360mm, ASUS Z790 Hero, 32GB GSkill 7800MHz CAS36, ASUS RTX4090
Samsung 55" JS8500 4K TV@60Hz,
3x 2TB WD SN850X 1x 4TB Crucial P3 M.2 NVME SSD, EVGA 1600T2 PSU
Fiber link to Yamaha RX-V467 Home Theater Receiver, Polk/Klipsch 6" bookshelf speakers, Polk 12" subwoofer, 12.9" iPad Pro
PFC yoke/throttle quad/pedals with custom Hall sensor retrofit, Thermaltake View 71 case, Stream Deck XL button box

Sys3 (DCS/P3Dv4/ATS/ETS): AMD 7800X3D, MSI MPG X870E Carbon, Noctua NH-D15S, 64GB GSkill 6000/30, EVGA RTX3090
Alienware AW3420DW 34" 21:9 GSync, Corsair HX1000i PSU, 4TB Crucial T705 PCIe5 + 2TB Samsung 970Evo Plus,
TM TCA Officer Pack
, Saitek combat pedals, TM Warthog, TM RS300 FF wheel/pedals, Coolermaster HAF XB case

3 hours ago, newtie said:

Try this and see what the result is.

I went back to the stock AF setting and didn't really see any difference in performance.  I still get the periodic high CPU loads, but it doesn't cause any stuttering or performance drop when it happens.  Now core 0 runs at 90+% instead of core 1.

I read some posts in this forum which recommended setting the AF so that P3D does not use core 0, but it doesn't seem to make any difference.

Thanks.

Dave

Simulator: P3Dv6.1

System Specs: Intel i7 13700K CPU, MSI Mag Z790 Tomahawk Motherboard, 32GB DDR5 6000MHz RAM, Nvidia GeForce RTX 4070 Video Card, 3x 1TB Samsung 980 Pro M.2 2280 SSDs, Windows 11 Home OS

My website for P3D stuff: https://sites.google.com/view/thep3dfiles/home

  • Moderator
8 hours ago, dave2013 said:

Ah, so should I exclude core 1 also?

Thanks.

Dave

I’m still on v5.3HF2 and given Bob’s experience with 5.4 I would be hesitant to make a recommendation.

Ray (Cheshire, England).

System: P3D v5.3HF2, Intel i9-13900K, MSI 4090 GAMING X TRIO 24G, Crucial T700 4Tb M.2 SSD, Asus ROG Maximus Z790 Hero, 32Gb Corsair Vengeance DDR5 6000Mhz RAM, Win 11 Pro 64-bit, BenQ PD3200U 32” UHD monitor, Fulcrum One yoke, Fulcrum Throttle Quadrant.

Cheadle Hulme Weather website.

chlive.php

[JobScheduler]
AffinityMask=4095
P3DCoreAffinityMask=4095
MainThreadScheduler=0
RenderThreadScheduler=2
FrameWorkerThreadScheduler=4

Is this ok for i5 12400?

13600KF - AIO - 32GB DDR4 - RTX4070 - UW1440p GSync - USB DAC - 2TB NVMe - Windows 11 Pro - Gladiator NXT EVO - 1 Gbps Fiber  - MSFS 2024

  • Commercial Member
2 hours ago, Juliet Alpha said:

[JobScheduler]
AffinityMask=4095
P3DCoreAffinityMask=4095
MainThreadScheduler=0
RenderThreadScheduler=2
FrameWorkerThreadScheduler=4

Is this ok for i5 12400?

That would be for an HT enabled 6 core CPU and this unfortunately allows scenery (and other objects) loading to share the MainThreadScheduler core 00 which brings excess heat and restricts the fps.

Instead I would use:

HT Enabled 6 core
05,04,03,02,01,00=core number
11,11,11,01,01,01=AffinityMask = 4053
11,11,11,01,01,01=P3DCoreAffinityMask = 4053
00,00,00,00,00,01=MainThreadScheduler = 0
00,00,00,00,01,00=RenderThreadScheduler = 1
00,00,00,01,00,00=FrameWorkerThreadScheduler = 2

This keeps scenery loading away from sharing the main thread cores 00, 01 and 02

So in Prepar3D.cfg:

[JobScheduler]
AffinityMask=4053
P3DCoreAffinityMask=4053
MainThreadScheduler=0
RenderThreadScheduler=1
FrameWorkerThreadScheduler=2


 

However, scenery loading can be increased by enabling the sister Logical Processors on cores 01 hosting RenderThreadScheduler and 02 hosting FrameWorkerThreadScheduler (which are not so active as the core 00 MainThreadScheduler) but these can be impacted from scenery loading depending on the system, so should be tested. This won't provide more fps but will reduce the time the CPU gathers objects and scenery as you fly. Giving:

HT Enabled 6 core
05,04,03,02,01,00=core number
11,11,11,11,11,01=AffinityMask = 4093
11,11,11,11,11,01=P3DCoreAffinityMask = 4093
00,00,00,00,00,01=MainThreadScheduler = 0
00,00,00,00,01,00=RenderThreadScheduler = 1
00,00,00,01,00,00=FrameWorkerThreadScheduler = 3

So in Prepar3D.cfg:

[JobScheduler]
AffinityMask=4093
P3DCoreAffinityMask=4093
MainThreadScheduler=0
RenderThreadScheduler=1
FrameWorkerThreadScheduler=3


 

The same theory to avoid core sharing with the main threads should be applied to any CPU using HT (or equivalent).

 

Steve Waite: Engineer at codelegend.com

  • Commercial Member

An alternative to increasing scenery loading speed is to put both RenderThreadScheduler and FrameWorkerThreadScheduler on core 01. Again this depends on the system and weight of scenery and objects so should be tested:

HT Enabled 6 core
05,04,03,02,01,00=core number
11,11,11,11,11,01=AffinityMask = 4093
11,11,11,11,11,01=P3DCoreAffinityMask = 4093
00,00,00,00,00,01=MainThreadScheduler = 0
00,00,00,00,01,00=RenderThreadScheduler = 1
00,00,00,00,10,00=FrameWorkerThreadScheduler = 2

[JobScheduler]
AffinityMask=4093
P3DCoreAffinityMask=4093
MainThreadScheduler=0
RenderThreadScheduler=1
FrameWorkerThreadScheduler=2


 

Steve Waite: Engineer at codelegend.com

1 minute ago, SteveW said:

An alternative to increasing scenery loading speed is to put both RenderThreadScheduler and FrameWorkerThreadScheduler on core 01. Again this depends on the system and weight of scenery and objects so should be tested:

 


HT Enabled 6 core
05,04,03,02,01,00=core number
11,11,11,11,11,01=AffinityMask = 4093
11,11,11,11,11,01=P3DCoreAffinityMask = 4093
00,00,00,00,00,01=MainThreadScheduler = 0
00,00,00,00,01,00=RenderThreadScheduler = 1
00,00,00,00,10,00=FrameWorkerThreadScheduler = 2

 

 


[JobScheduler]
AffinityMask=4093
P3DCoreAffinityMask=4093
MainThreadScheduler=0
RenderThreadScheduler=1
FrameWorkerThreadScheduler=2

 


 

Hi Steve, Any recommendation for 13900k? I am struggling with 5.4 also, any suggestion would be highly appreciated!

Ramon De Valencia

AMD 9950X3D / 64GB DDR5 6000MHz / RTX 5090 / 1200 watt PSU

MSFS 2020 and 2024

  • Commercial Member

With regard to the AMD 5800x3D with SMT enabled gives 16 Logical Processors from 8 cores we can use:

HT Enabled 8 core 16 LP
07,06,05,04,03,02,01,00=core number
11,11,11,11,11,01,01,01=AffinityMask = 65493
11,11,11,11,11,01,01,01=P3DCoreAffinityMask = 65493
00,00,00,00,00,00,00,01=MainThreadScheduler = 0
00,00,00,00,00,00,01,00=RenderThreadScheduler = 1
00,00,00,00,00,01,00,00=FrameWorkerThreadScheduler = 2

[JobScheduler]
AffinityMask=65493
P3DCoreAffinityMask=65493
MainThreadScheduler=0
RenderThreadScheduler=1
FrameWorkerThreadScheduler=2


 

With CPUs not using HT (or SMT) allow P3D to set the Affinity.

 

With regard to avoiding core 00 to allow for Windows processes this does not make a difference to P3D as Dave correctly suggests above.

 

Steve Waite: Engineer at codelegend.com

  • Commercial Member
5 minutes ago, ttbq1 said:

Hi Steve, Any recommendation for 13900k? I am struggling with 5.4 also, any suggestion would be highly appreciated!

This is a 24 core CPU with 8 P cores and 16 E cores. The 8 P cores with HT enabled give 16 Logical Processors for a total of 32 LPs. I'll do the math for that and come back in a moment...

 

Steve Waite: Engineer at codelegend.com

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.