v5 Affinity Mask changed behavior?

Any issues, problems or troubleshooting topics related to the Prepar3D client application.
Post Reply
cwburnett
Posts: 37
Joined: Sat Jun 29, 2013 4:47 pm

v5 Affinity Mask changed behavior?

Post by cwburnett »

@LM Team I have a six core/six thread i5-9600k. In P3Dv4.5 I had my mask set to 63, to force P3D onto all six cores. I did this because I also used Process Lasso to remove everything else from Core 0. I excluded Prepar3d.exe from Process Lasso to prevent it from interfering with P3D's built-in affinity capability. Doing this I saw pretty even use of my cores in complex scenery environments, with Core 0 running the main thread, and cores 2-5 rendering terrain.

In v5 I started with no AM and saw that v5 was using only 3 of my cores at any significant demand, so then I added the same AM to v5 but saw no change in behavior - again cores 1,3 and 5 were taking all the load.

So, simple question I guess - has there been a change in the way P3D uses the processor and is this behavior I'm observing expected or an anomaly? I did check the Advanced Configuration section of the P3Dv5 SDK documentation, but didn't see anything different indicated there with respect to Affinity Mask.

I have encountered scenarios where my system is utilizing the three cores it is using at about 80% and the GPU at about the same, yet my frames are falling below the target and was wondering if this was possibly related?

I should note that I have Process Lasso completely disabled (not even the engine is running) for v5.

Thanks!
cwburnett
Posts: 37
Joined: Sat Jun 29, 2013 4:47 pm

Re: v5 Affinity Mask changed behavior?

Post by cwburnett »

LM Team, I thought I'd update this with data to see if you can explain whether this is expected behavior.

In v4.5 when I run with V-Sync on and have my 4k monitor set to 30hz, I set my framerate unlimited and I get 30 fps and a balance of utilization across all 6 of my cores.

In v5 I have set the same affinity mask as before:
Image

If I run as in v4.5 with 30hz, vsync on, framerate unlimited, here's my CPU utilization in flight:
Image

If I set frames locked to 30 fps, as is the default, I see this:
Image

I ask because sometimes I find myself unable to maintain 30fps, yet the CPU load and the GPU load are well below 100%, and core 0 never goes above about 60%.
geloxo
Posts: 60
Joined: Sat Jun 07, 2014 11:58 pm

Re: v5 Affinity Mask changed behavior?

Post by geloxo »

Let it use all your cores. I did some tests with my 9900k and it behave much worse if I disabled any core or changed the affinity. Indeed trying to change affinity on the fly (with Lasso for instance) made game run horrendously slow.

P3D5 seems to be more efficient with CPU and GPU usage. I tested than on full demand (dense scenarios maxed out) it really uses my 16 cores at 60-70% levels and the GPU is always at its best full load. If it does not use some of your cores it could be as simple as the computing demand is not requiring it. Now the GPU takes a much bigger load than in P3D4, which was the CPU the one leading the efforts.

Cheers
Intel i9-9900K, Nvidia RTX2080Ti, 32 Gb DDR4, Windows 10 64bit
cwburnett
Posts: 37
Joined: Sat Jun 29, 2013 4:47 pm

Re: v5 Affinity Mask changed behavior?

Post by cwburnett »

geloxo wrote: Mon Apr 20, 2020 1:03 am Let it use all your cores.
AM=63 is all my cores. I should clarify that behavior is the same with or without the AM setting. With no AM, I noticed that it was only using 3 cores, so I 'forced' all six cores, but to no effect.
User avatar
Beau Hollis
Lockheed Martin
Posts: 2452
Joined: Wed Oct 06, 2010 3:25 pm

Re: v5 Affinity Mask changed behavior?

Post by Beau Hollis »

To get an accurate test, you should be flying fast or slewing. The primary core is always working, as are two additional cores set aside for per-frame rendering related work. The rest of the cores are used for jobs like loading terrain, autogen, creating batches, etc. On higher setting, you'll see all your cores working hard whenever terrain is being paged in.
Beau Hollis
Prepar3D Software Architect
cwburnett
Posts: 37
Joined: Sat Jun 29, 2013 4:47 pm

Re: v5 Affinity Mask changed behavior?

Post by cwburnett »

Beau Hollis wrote: Mon Apr 20, 2020 3:39 am To get an accurate test, you should be flying fast or slewing. The primary core is always working, as are two additional cores set aside for per-frame rendering related work. The rest of the cores are used for jobs like loading terrain, autogen, creating batches, etc. On higher setting, you'll see all your cores working hard whenever terrain is being paged in.
Thank you. So what I guess I'm wondering about is that I'm seeing my frame rate drop below the target, or below the vsync, even when none of my cores are at 100% and my GPU is also around 70%. This causes stuttering. And when I do raise my settings higher to try and use more resources, the framerate just falls even more, without any more CPU or GPU utilization.

I will test some more and come back with more coherent findings.
Post Reply