I have a few questions. How does one gain insights into what the core policy is, standard or otherwise?
Since these are Hybrid cpus, first of its kind, new thread scheduling policies had to be created to differentiate between P & E cores. Unfortunately, the policies are hidden deep in the Windows power plan. You can unhide them via registry edits, but I find it much easier to use a 3rd party app to easily change the thread scheduling policies and core parking policy. Standard Core Parking is the OG policy. Heterogeneous Core Parking was implemented w/ Hybrid CPUs. I get better results using standard. W/ that said,
Quickcpu is a great tool to tune thread scheduling policies that best suits your use case. It will also show what policies are currently in use. I also find using 'Prefer Performant Cores' for both short and long threads yields better results in most games.
Can you describe this in more detail. I am trying to understand if you disable e-cores how exactly is thread scheduling screwed up? I don't have an ecore based Intel CPU so I can't explore these issues independently.
This wasn't an issue with 12th gen. On 13th gen+, the Windows OS scheduler still utilizes performant or efficient thread policies when you disable e-cores in the BIOS when it should just use standard core parking and thread scheduling policies when e-cores is disabled. In the past, when you disabled e-cores, all of the P & E core policies would disappear and the standard policies would be used since there's only one set of cores present. Why Intel decided to do this is beyond me, but there is no way to convince the OS that there is only one type of core present. This leaves thread scheduling policies that are designed to work with both P&E cores, even if e cores are disabled this. You can confirm this with quickcpu even. When you open it up, you see P&E thread policies present and in use whether e-cores are disabled or not. On Windows 10 however, you don't get this behavior. On Win10, if you disable e-cores, P&E policies will be ignored and will default to standard core parking and thread scheduling policies. This is also why a lot of people who disable e-cores decided to use 10. Thr OS will default to the standard thread scheduling policies and utilize the cpu as if there's only one set of cores. This resolves a lot of issues with games that don't play well with e-cores. But guess what, there's even more bad news. On Win11, even if you disable e-cores, the Win11 thread scheduler is still in play. It cannot be disabled and often interferes with scheduling when ecores are disabled. And gues what, there's even more wonderful news. E-cores play a significant role in the cpu's l3 cache performance. If you disable e-cores, you may succumb to memory performance degradation due to the l3 cache taking a hit with e-cores disabled. I've spent years at this point on this poorly designed and implemented generation of Intel processors and its been a nightmare simply because there are a few older games I still enjoy playing.
TLDR...
Win11 uses an OS specific thread scheduler for Hybrid CPUs that cannot be disabled, even if e-cores are disabled. Win11 uses P&E thread scheduling policies whether e-cores are disabled or enabled. This creates issues in some situations.
Win10 does not have a thread scheduler, but it dies use P&E scheduling policies. If e-corss are disabled, i believe it ignores P&E policies and resorts to the standard ones (Ideal). I need to double check on this point.
Lastly, e-cores is tied directly to the cpu's l3 cache performance. If e-cores are disabled, you risk weird and/or intermittent memory performance degradation which will present itself as lag, input lag, stuttering, etc. Not all 13th+ gen cpu's are affected by this. If you are one of the unlucky few, you have no choice but to leave e-cores enabled.
I hope this answers some of your questions.