Jump to content
Sign in to follow this  
BrendanMan33

Prepar3D V4.5 is behaving very "Stuttery" and "Laggy"

Recommended Posts

4 hours ago, Evros said:

How is that supposed to help with anything?

With four cores and AM=85=01,01,01,01 (HT enabled) uses four cores efficiently by allocating one task per LP per core.

Otherwise you would share the rendering with a process that takes seconds to complete.

How many core have you got? With 6 or more start with AM=340=00,01,01,01,01,00 which uses four cores efficiently by allocating one task per LP per core. But leaves a pair of cores for other processes to gravitate to keeping them off the sim. This advice is over a decade old.

Start with low settings and build up, do not attempt to drop settings to find a decent setup. Take heed about what I posted about use of VSync and Unlimited.

 

Edited by SteveW

Steve Waite: Engineer at codelegend.com

Share this post


Link to post

We write HT enabled by comma delimiting as in binary 01,01,01,01 = decimal 85 that shows each core with two LPs. The core zero is the pair on the right.

With four cores no HT you get 1111 = AM15, no commas. Four cores still allocated here but no access to hyperthreading for the system which is running high on resources for P3D.

So there's no such thing as No AM. six core no AM no HT is in fact AM=63=111111. Here AM 30=011110 works better on a packed system, HT enabled AM340 works well.

We can tell that if we raise P3D in priority or give it Windows Game mode, it slows down waiting on resources because we can't raise anything in priority, we can only lower everything else compared to the one.

 

Use VSync = Off + Unlimited to see the fps available (SHIFT+Z) then when we see we have a good amount above our refresh rate, we apply VSync=On + Unlimited.

For low fps like 19 - 24 we can use the Locked slider setting.


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

How is taking resources away from sim going to help with it's performance. Having 6 cores at 90% constant load is a lot better scenario than 4 out of 6 at constant 100% load and throwing frame times all over because of that, thus creating massive stuttering.

Share this post


Link to post

Not sure you follow me. It won't. That's what i'm saying. When HT is enabled, you are taking resources from the sim if you allow the primary task core to be shared by a second task. Instead, the AM moves each task onto a core by itself. The first four Tasks occupy the first two cores. With AM85 or 340 with 6 core+HT each of the four tasks has a core to itself.


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

Just an anecdotal heads-up with affinity masks, the masks that don't use the first core. I've seen it on multiple systems and on a colleague's system that P3D will then struggle to render terrain properly. It runs better and a lot smoother but you can see the terrain slowly become featureless, smooth and very low-res because it doesn't seem to load fast enough. Even seen P3D go to its load screen after take-off because it has to load in additional terrain. Use the first core again and everything's good. So if anyone decides to mess with masks and use one that stops using the first core, you might experience what I did. 


Asus TUF X670E-PLUS | 7800X3D | G.Skill 32GB DDR @ CL30 6000MHz | RTX 4090 Founders Edition (Undervolted) | WD SNX 850X 2TB + 4TB + 4TB

Share this post


Link to post
8 minutes ago, SteveW said:

Not sure you follow me. It won't. That's what i'm saying. When HT is enabled, you are taking resources from the sim if you allow the primary task core to be shared by a second task. Instead, the AM moves each task onto a core by itself. The first four Tasks occupy the first two cores. With AM85 or 340 with 6 core+HT each of the four tasks has a core to itself.

Let's discard the HT for the moment. My question is how is taking actual cores away from sim going to help with performance. Unless you are running HEDT with "too many cores", I see no logical explanation to do so. And even then it is case specific. And what four tasks are you talking about?

Edited by Evros

Share this post


Link to post

It doesn't matter at all whatever four cores are used. I've got an 18 and a 10 a 6 and a 4. If you have a slow build up that's maybe because you have a struggling back end problem. Think about how a four core machine does it, and how that's no different allocating four cores on a 6 10 or 18. The 18 core is currently running HT on and AM 340 and background is instantaneous.


Steve Waite: Engineer at codelegend.com

Share this post


Link to post
Just now, Evros said:

Let's discard the HT for the moment. My question is how is taking actual cores away from sim going to help with performance. Unless you are running HEDT with "too many cores", I see no logical explanation to do so. And even then it is case specific.

You are not taking cores away from the sim which is the problem you seem to have. Instead have a look at task manager and see that only those backend cores light up to %100 when loading the scenario. When the sim is settled into a flight they don't max out unless the settings are too high. But as settings are increased we see more activity on those cores, including the second. And with no AM that activity competes for one core. With HT each pair of 'cores' are actually only one core that appears to the system as two. That's why the P3D instructions include a note about an '10' in the AM

 


Steve Waite: Engineer at codelegend.com

Share this post


Link to post
6 minutes ago, SteveW said:

You are not taking cores away from the sim which is the problem you seem to have. Instead have a look at task manager and see that only those backend cores light up to %100 when loading the scenario. When the sim is settled into a flight they don't max out unless the settings are too high. But as settings are increased we see more activity on those cores, including the second. And with no AM that activity competes for one core. With HT each pair of 'cores' are actually only one core that appears to the system as two. That's why the P3D instructions include a note about an '10' in the AM

 

As you have suggested, lets take 6 core, no HT CPU as an example. With AM=30, only cores 1,2,3,4 are assigned to P3D and cores 0 and 5 are contributing nothing. How is that not taking processing power away from sim? With all 6 cores available for sim, I could run higher settings before hitting 100% load on those cores. Am I missing something here?

Share this post


Link to post

So with HT disabled have a look at how many cores are in operation:

A. during loading the scenario

B. during settled in the flight

C. fly across to a new area so that the sim has to load more data

We can add more than four to improve the loading time, but that can be at a cost of managing the extra bandwidth when they all work together to do not so much. So needs some homework to be sure about a particular machine and the preferences and scenery and so on.

 

 


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

What have you got showing in task manager there then, probably four very obvious tasks, but any more showing up in there?


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

Also your point about avoiding core zero in my AM 30; well my AM 30 does in fact miss core zero agreed 011110.

But it is not, so as to miss core zero, it is just simply to show that any four cores will be the same as far as P3D and FSX are concerned.

We can try 110011 if we want AM 51. Makes no difference.

What makes a difference is how the simulator is used and what other exe apps are running beforehand and so on. So the best way to extract the most is to use an optimum amount of cores, usually 4 or 6 and leave the rest for the system. We can go further and corral exe apps onto a subset of cores. Remember that with HT on or off some programs will occupy every core they find, that 4 in a 4 core and 8 in a four core + HT.


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

Sounds like the more threads spun out onto cores equals the more work the managment thread (running on core 0) has to perform.

So more cores = good up to a point at which the management of those cores starts to cost perfomance.

  • Like 1

Ryzen 5800X clocked to 4.7 Ghz (SMT off), 32 GB ram, Samsung 1 x 1 TB NVMe 970, 2 x 1 TB SSD 850 Pro raided, Asus Tuf 3080Ti

P3D 4.5.14, Orbx Global, Vector and more, lotsa planes too.

Catch my vids on Oz Sim Pilot, catch my screen pics @ Screenshots and Prepar3D

Share this post


Link to post

You definitely 'get it' sir.

Cool.


Steve Waite: Engineer at codelegend.com

Share this post


Link to post

With P3D we get maybe 55 or more threads, that in turn invokes threads of various resources like networking, so there's a lot going on.. What it is, is the number of cores sharing the bus all at once spreading out work which is not much anyway even just for one or two cores. Competes for throughput on the system,similar to  increasing load on the renderer. Varying the load and fps introduces the staggering effects or long frames, or stutter.


Steve Waite: Engineer at codelegend.com

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