Jump to content

Sign in to follow this  
threegreen

Trying to get more performance out of P3D

Recommended Posts

I've been trying lately to get more performance out of P3D because I'm not sure if I'm impressed by what I get considering my system. My main beef is that I keep reading about P3D v4 using the CPU cores evenly by default and I see other setups which are achieving this. This is not however what I see on my system. I always have core 0 maxed out at 100% whereas all other cores only really get utilized during any loading process but not when flying.

Overall CPU usage is around 14%. I used to have HT enabled but I tried disabling it and the overall CPU usage increased to about 24-27% and I see core 1 is getting utilized more, around 25%, which is nice I guess. I also tried several AMs but for the most part nothing really changed.

I'm getting around 30 FPS on third party airports with the PMDG NGXu (which on my system appears to have little impact on overall performance compared to many other reports) in good weather which however decreases with more clouds and on final approach. I also notice stutters pretty frequently. I usually limit the AI traffic to 80 or less. Other addons running while flying are ASP4, REX Environment Force and ProATC-X.

My settings in P3D are reasonable:

Display_zpsfcr2w9fo.jpgWorld_zpsg9tqmjv3.jpg

Weather_zpslsg04j6u.jpgLighting_zpssfdlueaz.jpg


Niklas Graefe
Prepar3Dv4.5 | ASUS Maximus XI Code Z390 | i9 9900K 5 GHz | Corsair Vengeance RGB Pro 16 GB (2x 8 GB) DDR4 3600 MHz | GeForce RTX 2080 Ti 11 GB GDDR6 MSI Lightning Z | Windows 10 Pro 64 bit | Samsung 43'' 4K curved TV | Agronn 737 Captain's Yoke | FSC 737 Throttle Quadrant | Saitek Pro Flight Rudder Pedals

 

Share this post


Link to post

The best tips I can give you to try are.

1) Set FPS locked no higher than 30 I use 26 along with a config tweak under [main] FIBER_FRAME_TIME_FRACTION=0.10. (I have Vs and triple OFF)

2) Open P3D to splash screen were you see your default aircraft turning round. Open task manager, under "detail" make every addon you use not use core 0. They can be free to use all other cores/threads with HT ON, Everything but core 0. I have one exception to this the "sim objects" I set that one app to use all. ( everything) 

With no AM what you see now is P3D throwing itself over all your 8 logical and 8 threads available...a mess, it will look like all are being use and used well. Well don't be fouled. Turn all your Threads off and let P3D just use the 8 Logical cores it has.

Make a AM so P3D only users the main logical cores/turning of HT (threads) for P3D. Add that to your config. Add it under its own heading

[JOBSCHEDULER]
AffinityMask= you need to work out the code/number

They are my bread and butter tried and trusted tweaks.

Nothing here that will cost you much time and nothing here you cannot delete if you feel it does not work for you. Only way to see is to try it. GL

NOTE: you pc a lot better than the one I have (5 years old) looking at your setting, there fine (see NOTE below) but you can and I do run auto veg at max setting with no FPS hit at all. 

If my old PC can run FSL/NGu anywhere at any time of day at 26FPS your PC should do it with no problem.

3) Also.....have 2 profiles, 1 for day with cloud shadows on etc, and Night with no cloud shadows and anything else you don't need or see at night turned off.

4) NOTE: Turn your water to one down from ulta its really bad to have it on Ulta its to do with CUDU cores lower to even med.

5) Turn ON Use high res terrain textures.

 

EDIT:

6) I set my traffic to around 20% but use 80% for airports and within 20 miles. AI can kill FPS. Goto an airport and be very careful to make the airport look as full as you need but not loading traffic miles away that you don't need. Play around with your levels it makes a huge difference to FPS.

Edited by Nyxx

David Murden.  P3D v4.5  FSL A321 / A320 A319 : PMDG NGu / 748PMDG NG / 747-/ 777 : QW 787 :  Maddog MD-80 :Q400 :   DCS: AV-8B Harrier: :  F-14B Tomcat  : F-16C Viper F/A-18C Hornet 

My FSL Walkthrough PDF From GPU to Parked.   My PMDG NG SpotLight Profile/Mod.  My PMDG NGXu Light Mod

PC 4790k@4.6 : 1070 : 16GB DDR3 RAM : Thrustmaster Warthog HOTAS: Thrustmaster TPR.

Share this post


Link to post

Isn’t all shadows turned off automatically at night?


EVGA 2080 Ti  FTW3 Hybrid , 8700K, 1Tb 970 EVO Plus, 48 Гб HyperX

Share this post


Link to post

There are a couple of important data points worth gathering to assess where performance gains might be made.  First, you need to know whether your are CPU or GPU-limited when the slowdowns occur.  I watch CPU utilization by-core using Process Lasso, and I watch GPU performance (load, power factor, and temp) using either eVGA Precision or MSI Afterburner's OSD.

Slowdowns when encountering wx are usually GPU-related...4K res with both 4xSSAA and DL on is a really heavy load in the presence of dynamically lit objects.  I turn DL off in daytime and run 4xSSAA, and I back the AA off to 4xMSAA with DL on at night, and that pretty much prevents saturating the 2080Ti.  Also, high res cloud textures and SSAA will hammer performance.  I run 512x512 bit cloud textures--they are, after all, supposed to look fuzzy around the edges.

Cloud shadows are another performance sinkhole, and really unnecessary at night and in heavy wx (e.g. overcast, fog).

With HT off you shouldn't need an AM on P3D...if you're running ancillary programs like wx and ATC, you might use masking on them to keep them off Cores 0 and 1 where the main and scheduling threads run.

Reducing the FFTF as recommended above is something to try, although with an 8-core CPU it shouldn't make a lot of difference.

AI traffic and autogen are the biggest opportunities for performance when configuring P3D.  I use UTLive with 30-40% commercial and 40% GA, and my autogen settings are fairly close to yours.

Last, if you are seeing 100% utilization on Core 0 with frame rate unlimited and VSync on, it suggests to me that your monitor is not set to a 30 Hz refresh rate.  On my 8086K+2080Ti, unlimited plus VSync and 30Hz set in my Samsung TV usually yields something like 70-80% on Core 0 when flying.  100% is what I see when the monitor is set to 60Hz.  If you can't set 30Hz in the monitor, you can use the Rivatuner RTSS to constrain the video subsystem to 30 Hz and you should recover some CPU headroom that way.

Regards

  • Like 1
  • Upvote 2

Bob Scott | AVSIM Forums Administrator | AVSIM Board of Directors

ATP Gulfstream II-III-IV-V

System: i7-8086K @ 5.3GHz on custom water loop, ASUS Maximus XI Hero, 16GB 3600MHz CAS15, eVGA 2080Ti XC Ultra, Samsung 55" JS8500 4K TV@30Hz, 2x1TB Samsung SSD 970Pro NVMe+850 Pro SATA 3, eVGA 1KW PSU

SB XFi Titanium, optical link to Yamaha RX-V467, Polk/Klipsch 6" bookshelf spkrs, Polk 12" subwoofer, 12.9" iPad Pro, PFC yoke/throttle quad/pedals with custom Hall sensors, Coolermaster HAF932 case, Stream Deck XL button box

Share this post


Link to post

I would turn off VSync and Triple  Buffering, they cut the FPS, I would turn autogen draw distance down to medium, and maybe level of detail radius down to high. Try those changes as an experiment.

Lee


Lee Holdridge

i7 8700K 4.8 OC 32GB Ram 11GB GTX 1080ti

 

Share this post


Link to post
3 hours ago, Nyxx said:

1) Set FPS locked no higher than 30 I use 26 along with a config tweak under [main] FIBER_FRAME_TIME_FRACTION=0.10. (I have Vs and triple OFF)

4) NOTE: Turn your water to one down from ulta its really bad to have it on Ulta its to do with CUDU cores lower to even med.

I have the frame rate set to unlimited because as soon as I limit it I actually lose a good 5 - 7 FPS and things get stuttery. I use ultra for water settings because it's needed for EF (I think).

 

2 hours ago, w6kd said:

First, you need to know whether your are CPU or GPU-limited when the slowdowns occur.

Last, if you are seeing 100% utilization on Core 0 with frame rate unlimited and VSync on, it suggests to me that your monitor is not set to a 30 Hz refresh rate.

I'm definitely CPU limited. I've never seen my GPU be above 60% of utilization. My TV is indeed set to 60Hz.

Thanks everyone. I'll try all the suggestions when I have time and report back.


Niklas Graefe
Prepar3Dv4.5 | ASUS Maximus XI Code Z390 | i9 9900K 5 GHz | Corsair Vengeance RGB Pro 16 GB (2x 8 GB) DDR4 3600 MHz | GeForce RTX 2080 Ti 11 GB GDDR6 MSI Lightning Z | Windows 10 Pro 64 bit | Samsung 43'' 4K curved TV | Agronn 737 Captain's Yoke | FSC 737 Throttle Quadrant | Saitek Pro Flight Rudder Pedals

 

Share this post


Link to post
18 minutes ago, threegreen said:

I have the frame rate set to unlimited because as soon as I limit it I actually lose a good 5 - 7 FPS and things get stuttery. I use ultra for water settings because it's needed for EF (I think).

You will if you don't add the config tweak its not a pick and choose you have to do both. Limit FPS in P3D and you lose 5-7 FPS add the [main] FIBER_FRAME_TIME_FRACTION=0.10 and you lose nothing. Its not a pick and mix :)

I use EF you don't need to be on Ultra.

 


David Murden.  P3D v4.5  FSL A321 / A320 A319 : PMDG NGu / 748PMDG NG / 747-/ 777 : QW 787 :  Maddog MD-80 :Q400 :   DCS: AV-8B Harrier: :  F-14B Tomcat  : F-16C Viper F/A-18C Hornet 

My FSL Walkthrough PDF From GPU to Parked.   My PMDG NG SpotLight Profile/Mod.  My PMDG NGXu Light Mod

PC 4790k@4.6 : 1070 : 16GB DDR3 RAM : Thrustmaster Warthog HOTAS: Thrustmaster TPR.

Share this post


Link to post
26 minutes ago, threegreen said:

I have the frame rate set to unlimited because as soon as I limit it I actually lose a good 5 - 7 FPS and things get stuttery. I use ultra for water settings because it's needed for EF (I think).

 

I'm definitely CPU limited. I've never seen my GPU be above 60% of utilization. My TV is indeed set to 60Hz.

Thanks everyone. I'll try all the suggestions when I have time and report back.

What was posted above by #w6kd needs to be highlighted again, because it might be the single most important thing for your setup:

"Last, if you are seeing 100% utilization on Core 0 with frame rate unlimited and VSync on, it suggests to me that your monitor is not set to a 30 Hz refresh rate.  On my 8086K+2080Ti, unlimited plus VSync and 30Hz set in my Samsung TV usually yields something like 70-80% on Core 0 when flying.  100% is what I see when the monitor is set to 60Hz.  If you can't set 30Hz in the monitor, you can use the Rivatuner RTSS to constrain the video subsystem to 30 Hz and you should recover some CPU headroom that way."

 

As a point of comparison, my typical settings are higher than yours, and I have an 8700K (6 physical cores, 5 ghz), and my setup is smooth and stutter-free 99% of the time.  I can do that, because I'm refreshing at 30hz -- my sim only has to maintain 30 fps for smoothness.  Yours, if in fact you are refreshing at 60hz, is demanding that your cpu maintain 60 fps, and when your fps dips below 60, you're risking a stutter.  You should have more headroom than I do, with your 9900K and I think your refresh rate is what is hurting you.  I'd keep vsync ON, but drop your refresh rate to 30hz.

  • Upvote 2

Rhett

i7-8700k @ 5.0 ghz, 32 GB G.Skill TridentZ, 1080Ti, 32" BenQ, 4K res

Share this post


Link to post

If that's what a 9900K is doing good job I am waiting till next year I have higher settings in scenery and 4K, all cores used no HT.

Edited by rjfry

i7 7700K 4.8 \ MSI RTX 2080Ti GAMINGX TRIO \ M.2  Samsung 960 EVO \ 2TB Samsung 850 EVO \ 2TB BarraCuba \ 16GB G.SKILL DDR4 3000MHZ \ Windows 10 Home\ ASUS 28" 4K monitor\ P3Dv4.5

Raymond Fry.

PMDG_Banner_747_Enthusiast.jpg

Share this post


Link to post
4 hours ago, w6kd said:

There are a couple of important data points worth gathering to assess where performance gains might be made.  First, you need to...

Bob, your tuning guide should be archived and shared anytime folks seek assistance in making their sim run better!  Congrats and kudos!  All I would add is to forget about tweaking FFTF and just buy FFTF Dynamic

Greg

  • Upvote 2

i7-8086K @ 5.3GHz, ASUS Maximus XI Hero, EVGA 2080 Super driving a 27" 2K LCD, G.Skill 16GB 3600 Trident Z 15-15-15, Samsung 512GB 970 Pro NVMe (OS and P3D) and Sabrent 1TB Rocket NVMe, Malware 10 Pro 64.  P3Dv4.5HF2

Share this post


Link to post

So what I did now was to set the monitor refresh rate down to 30 Hz, limiting the FPS to 30 and keeping Vsync and TB on (I get some screen tearing without Vsync and it's smoother). What I'm noticing though is that setting the monitor to 30 Hz results in some input lag (cursor is kind of jerky, for example). This is normal I guess? I haven't flown yet (I'll test tomorrow) but this delay would be highly problematic when playing Call of Duty for example where you have to react quickly. I'm thinking this might be a bit of an issue when flying too, as in seeing the aircraft turn a tad later than my actual flight control input. I'm really not sure about this.

As for AMs, I've given up. All I ever achieve is putting the maxed out load from CPU 0 to CPU 4, for example, but I still haven't been successful when it comes to a somewhat even utilization of CPU cores by P3D. There's still always one 100% utilized, neither AMs nor setting the refresh down to 30 Hz did anything here.

I also put all my addons away from CPU 0 and 1 but it doesn't save the settings. Do I have to do this anew every time I start the apps?

Edited by threegreen

Niklas Graefe
Prepar3Dv4.5 | ASUS Maximus XI Code Z390 | i9 9900K 5 GHz | Corsair Vengeance RGB Pro 16 GB (2x 8 GB) DDR4 3600 MHz | GeForce RTX 2080 Ti 11 GB GDDR6 MSI Lightning Z | Windows 10 Pro 64 bit | Samsung 43'' 4K curved TV | Agronn 737 Captain's Yoke | FSC 737 Throttle Quadrant | Saitek Pro Flight Rudder Pedals

 

Share this post


Link to post
1 hour ago, threegreen said:

So what I did now was to set the monitor refresh rate down to 30 Hz, limiting the FPS to 30 and keeping Vsync and TB on (I get some screen tearing without Vsync and it's smoother). What I'm noticing though is that setting the monitor to 30 Hz results in some input lag (cursor is kind of jerky, for example). This is normal I guess? I haven't flown yet (I'll test tomorrow) but this delay would be highly problematic when playing Call of Duty for example where you have to react quickly. I'm thinking this might be a bit of an issue when flying too, as in seeing the aircraft turn a tad later than my actual flight control input. I'm really not sure about this.

As for AMs, I've given up. All I ever achieve is putting the maxed out load from CPU 0 to CPU 4, for example, but I still haven't been successful when it comes to a somewhat even utilization of CPU cores by P3D. There's still always one 100% utilized, neither AMs nor setting the refresh down to 30 Hz did anything here.

I also put all my addons away from CPU 0 and 1 but it doesn't save the settings. Do I have to do this anew every time I start the apps?

With 30Hz set on the monitor, you want to take the internal frame rate limiter out of the picture completely and let VSync regulate the frame production.  So set frame rate to unlimited, not to 30fps.

A 30Hz display will present some loss of cursor smoothness, especially on a large screen, as the updates occur less frequently while the cursor is travelling much larger distances.  It would not be optimum to use a 30Hz monitor for FPS games, I think...the screen physics are a lot different in a fast-moving shooter.  But for P3Dv4, letting VSync control the frame rate output at 30 fps is really quite smooth if your PC can produce frames at least that fast.  It's very evident that Core 0 load is lower when done this way, presumably because the CPU is not trying to produce lookahead frames when regulated by VSync.

Also, make sure your TV is set to game/computer mode or equivalent...on many 4K TVs the cinema modes will buffer the input in order for the TV's electronics to do upscaling and other video processing, which can result in a significant lag.  My Samsung 8500 has a gaming mode that bypasses all of that.  Odds are that yours does too.

You can persistently set AM on your ancillary apps either with an external process control utility like Process Lasso, or by using a utility that writes affinity data into the PE header of the executable itself.

Even CPU utilization across all the cores is simply not how P3D was designed to run...there's really nothing to be gained to try and make that happen yourself.  The main thread runs on the first available core, and the terrain and texture process scheduling runs on the next one, and it and the other cores are tasked in an irregular manner when the intermittent gulps of terrain/texture fusion and loading workload present themselves.  It is absolutely normal for P3D to load up cores 0/1 fairly heavily, with intermittent peaks on the other CPUs.


Bob Scott | AVSIM Forums Administrator | AVSIM Board of Directors

ATP Gulfstream II-III-IV-V

System: i7-8086K @ 5.3GHz on custom water loop, ASUS Maximus XI Hero, 16GB 3600MHz CAS15, eVGA 2080Ti XC Ultra, Samsung 55" JS8500 4K TV@30Hz, 2x1TB Samsung SSD 970Pro NVMe+850 Pro SATA 3, eVGA 1KW PSU

SB XFi Titanium, optical link to Yamaha RX-V467, Polk/Klipsch 6" bookshelf spkrs, Polk 12" subwoofer, 12.9" iPad Pro, PFC yoke/throttle quad/pedals with custom Hall sensors, Coolermaster HAF932 case, Stream Deck XL button box

Share this post


Link to post

You can configure P3D to switch to a 30 Hz mode when it starts and then switch back to the original mode when you close P3D.

I wouldn't limit the frame rate as a vsync @ 30 Hz will limit to 30 fps automatically.

Also there are a few adjustments that can be made to reduce input lag.

See the below threads.

 

 

Share this post


Link to post
3 hours ago, threegreen said:

What I'm noticing though is that setting the monitor to 30 Hz results in some input lag (cursor is kind of jerky, for example). This is normal I guess? I haven't flown yet (I'll test tomorrow) but this delay would be highly problematic when playing Call of Duty for example where you have to react quickly.

Another option, RivaTuner Statistics Server , has been mentioned in one of the threads Rogen linked to.

RTSS allows you to keep your monitor at it's predefined sync rate, and then set the framerate in RTSS (either as a target or as a divider of your monitor's sync rate).  Easy to set-up, and easy to start (either with the sim or manually... the latter requires just a single click of the RTSS exe.).

Greg

  • Like 1

i7-8086K @ 5.3GHz, ASUS Maximus XI Hero, EVGA 2080 Super driving a 27" 2K LCD, G.Skill 16GB 3600 Trident Z 15-15-15, Samsung 512GB 970 Pro NVMe (OS and P3D) and Sabrent 1TB Rocket NVMe, Malware 10 Pro 64.  P3Dv4.5HF2

Share this post


Link to post
1 hour ago, lownslo said:

Easy to set-up, and easy to start (either with the sim or manually... the latter requires just a single click of the RTSS exe.).

I start RTSS from FSUIPC5 setting an affinity to LP0 & LP1 and I set my P3D affinity to all LPs EXCEPT 0 & 1. I have a very similar PC to OP except for the GPU, and I run my 9900K @5.0GHz with HT on.  So my thinking, which could be flawed, is to take any processing tasks associated with frame limiting and syncing out of the P3D task jar and put in on a separate set of LPs using RTSS.

My system runs AWESOME. YMMV. I fly GA piston and light jets.

  • Upvote 1

Bruce Buckley | RW Commercial / Instrument / SEL / MEL

I9-9900K @5.0GHz, Maximus XI  Hero, GTX 1080ti, 32GB DDR4 3200 14, 1TB NVMe SSD, 500GB SSD, 1TB HDD, 40" Samsung 4K TV, Saitek/Logitech Pro Yoke, Throttle Q, Rudder Pedals, Switch Panel, WIN10, P3DV4.5, PTA, ASP4, REX TDSC Lots of ORBX stuff and some add on airports / aircraft

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


    2%
    $540.00 of $25,000.00 Donate Now
×
×
  • Create New...