P+E core management under Windows 11 23H2

Started by geloxo, January 02, 2024, 06:18:42 AM

Previous topic - Next topic

geloxo

Hi,

I noticed that when using ParkControl together with Lasso under current Windows 11 23H2, some core preferences degrade performance resulting in many freezes in games. In particular Flight Simulator is unplayable. The problem appears to be on the allocation of P cores to processes in Windows, which results in P cores not being used properly or at least all the time as expected. The solution I found to resolve the issue is not using ParkControl defaults, but forcing P-cores always on long threads. Short threads can be forced to E cores or use the prefer E cores option. This results in a steady and normal CPU utilization and brings back normal performance figures to games.

My settings for a i9-12900ks using Lasso´s "Bitsum Highest Performance" profile are as follows:

- Long threads: "always P cores"
- Short threads: "always E cores" or "prefer E cores"

Anything else than that, in particular leaving "prefer P cores" or "automatic" for long threads results in a severe performance degradation and frequent/periodic freezes, with CPU usage drops close to 0% during normal CPU load in games, which shouldn´t happen. I would say the problem is Windows as this new update has been reported as problematic in many forums, but maybe you could take a look to this just in case or even modify proposed defaults if required to prevent this issue.

I hope this helps.

Cheers

Jeremy Collake

Hmm, interesting. Windows heterogenous scheduling is still quite a mess. We'll take this under consideration and do some additional testing. Thanks for the heads up!

As an aside, I suggest an Efficiency Mode OFF rule for MSFS.
Software Engineer. Bitsum LLC.

geloxo

Thanks a lot.

I will try to add an additional rule to skip E-Cores in this game.

Cheers

lewishamilton0998

Learn how to download Windows 11 version 23H2 update, how to deploy Windows 11 21H2 feature pack, and more with ManageEngine Patch Manager Plus.
retro bowl college

Ramesh

Quote from: geloxo on January 02, 2024, 03:58:46 PMThanks a lot.

I will try to add an additional rule to skip E-Cores in this game.

Cheers

I tried your findings below & my game BF2042 hit registration is now way better. I'd like to ask if Short Threads do you prefer to use "always E cores" or "prefer E cores"?

Also above you stated your going to add an additional rule to skip E-Cores. Can you please elaborate how to do that?

Thank you 😊

- Long threads: "always P cores"
- Short threads: "always E cores" or "prefer E cores"


Jeremy Collake

#5
"Short" and "Long" mean short and long running threads, respectively. So, it is a question of how long the threads exist for, and games may have both types of threads. I can't say the best setting, because it may vary, but usually "Performant" or "Prefer Performant", probably the latter.

I do not think "Efficient Cores" or "Prefer Efficient Cores" is a good choice for either short or long running threads, but it may be what works best for some specific games/apps.

You can use Process Lasso to create an Efficiency Mode OFF rule. See this post: https://bitsum.com/docs/how-to-keep-processes-off-e-cores/
Software Engineer. Bitsum LLC.

Ramesh

Quote from: Jeremy Collake on March 25, 2024, 07:11:51 AM"Short" and "Long" mean short and long running threads, respectively. So, it is a question of how long the threads exist for, and games may have both types of threads. I can't say the best setting, because it may vary, but usually "Performant" or "Prefer Performant", probably the latter.

I do not think "Efficient Cores" or "Prefer Efficient Cores" is a good choice for either short or long running threads, but it may be what works best for some specific games/apps.

You can use Process Lasso to create an Efficiency Mode OFF rule. See this post: https://bitsum.com/docs/how-to-keep-processes-off-e-cores/


Games do they use Short or Long Threads more. I know you said games do use Short Threads. I'd like to know which is usually the more dominant thread for games.

The issue with Battlefield 2042 is it has very bad hit registration with E-Cores. So, I'd get on Twitch try and find a similar player with the same Intel Chip as I watched them stream & their hit detection was very good. I asked them how? So, they said they had to turn off E-Cores & Hyperthreading.

At first, I was skeptical, but I did however turn off Hyperthreading. Lo behold the game played better. I didn't want to turn off E-Cores, so I've used ParkControl to do the following:

- Long threads: "Always Performant Cores"
- Short threads: "Prefer Performant Cores"

Now I could force the entire Short Threads on Performant so basically the E-Cores would never be used but felt the E-Cores should have some use. I'm wondering if the - Short threads: "Prefer Performant Cores" should be left to "Automatic"?

I did try Hyperthreading Off and Efficiency Mode OFF rule. Efficiency Mode OFF rule causes hit registration issues. I'm not sure why but after a few matches I started noticing it became worst. So, I turned it back to default and then hit registration was better.

If you say Efficiency Mode OFF rule with Hyperthreading On & Long Threads & Short Threads "Automatic", does it work? Nope hit registration issues persist.

Hence why I'd like to know for games which is the Priority Thread? Thank you ;D

Jeremy Collake

QuoteI'd like to know which is usually the more dominant thread for games.

We have never studied the thread durations of common games, so I don't have an answer as to if short or long running threads are more prevalent, or if either is more impactful for performance. The games and their underlying engines could be architected to be reliant on either type of thread; it's not like one is innately better than the other.

Therefore, for the time being, experimentation is required to assess which settings are best for your hardware and games.

QuoteEfficiency Mode OFF rule causes hit registration issues.

That sounds unusual and I advise double checking that there is a correlation. I'm not saying there isn't, but my hunch is there are other factors at play.

Sorry I don't have more exact answers, but when exactness is possible, we bake that into an algorithm ;).
Software Engineer. Bitsum LLC.

felixandrea

#8
Interesting findings, geloxo! I've been having similar performance issues with Flight Simulator on the latest Windows update, and your solution sounds promising. For those of you struggling with this, you might also want to check out the following tips:

Disable Hyperthreading: Sometimes, disabling hyperthreading in your BIOS settings can help improve performance in certain games, especially those that have issues with thread management.

Update Drivers: Ensure that all your system drivers, especially your GPU drivers, are up to date. Sometimes, performance issues are caused by outdated drivers that don't handle new Windows updates well.

Adjust Game Settings: Lowering in-game settings like shadows, reflections, and texture details can also help if you're experiencing stutters and frame drops.

Use Process Lasso: As Jeremy mentioned, using Process Lasso to create an Efficiency Mode OFF rule can help manage which cores are used by specific applications. You can read more about setting this up here: Process Lasso Documentation.

Monitor CPU Usage: Tools like HWMonitor or Task Manager can help you keep an eye on CPU usage to see if your changes are having the desired effect.

rice purity test 2024