• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Are all software/scheduling issues with e-cores fixed on Intel 12th to 14th Gen - Willing to give hybrid ach a chance now

Cyberpunk just had an update recently that had to specifically tell e-cores and p-cores what to do. I can tell you not a lot of devs will go out of their way to do that.

That is not necessarily an improvement. Traditionally it is better to let the in-kernel OS scheduler do this job, because it knows more about total system load (especially the kernel itself).

Has there been any reporting about how effective this is?
 
That is not necessarily an improvement. Traditionally it is better to let the in-kernel OS scheduler do this job, because it knows more about total system load (especially the kernel itself).

Has there been any reporting about how effective this is?

It says "prioritize P-cores". Which is what the OS scheduler should do anyway. This probably does little more than providing the proper hints to the scheduler.
 
14900k is being sold as a gaming cpu - the 7950x isn't. That's the difference. You could argue that a product like the 7900x3d is e-waste, and i would agree... it's not like all amd products are amazing.
Lol ? I'm sorry, but that argument is factually fake.... what are you people even saying, both AMD and Intel market their CPU for gaming and creation, X3D is just a server tech that happened to be really good for gaming as well. The hate for e-cores is so strong that people would actually make shit up ?
1710431760608.png

1710434148230.png

1710431845537.png


1710434357038.png
 
Last edited:
I had just mentioned APO (yesterday?), but apparently Intel just added 12 more games to their APO, totaling 14. it also adds an advanced mode that supposedly allows non-14th gen CPUs and untested games to be tried as well, which could actually make it a viable app, assuming it actually works or helps. I don't play any of the games they added, so I have no idea. I also don't have a motherboard that will ever get more BIOS updates or allow APO to work, so I can't even test it lol.
 
I keep hearing e-cores or otherwise P cores on single die more than 8 with HT/SMT off would be best gaming solution. We have one option that being Intel with the Gracemont e-cores on same die, but no option for more than 8 P core son a node as AMD has max of 8 per CCD. Last non-hybrid arch with more than 8 same type of cores on single die was Comet Lake Intel 10850K/10900K.

Maybe thread director works well. Just have heard lots of mixed reports with e0-cores though most benchmarks do seem to favor them on so maybe games are using more than 8 cores successfully?? Or something else??
The thread scheduler is broken and is nothing more than a pain in the ass if you also play older games. It's quite unbelievable how badly Intel screwed up this implementation. To those of whom that say, 'Hey, works perfectly good for me so it must be perfect,' are both ignorant and lucky enough not to have encountered it. They simply don't play a game or use an app that doesn't play well with P/E and Win11 thread scheduler. Depending on the game, you have to play with core affinities, thread scheduling policies and possibly completely disabling e-cores.

A big problem I found is that from 13th gen+, Windows still uses thread scheduling policies for P/E cores even if e-cores are disabled. If e-cores are disabled, there should be no need to distinguish the difference between P/E cores. It should just default to the standard core policy which it doesn't. It's quite infuriating. Even if you disable E-Cores, the thread scheduling policies may still screw things up with e-cores disabled.
 
Last edited:
The thread scheduler is broken and is nothing more than a pain in the ass if you also play older games. It's quite unbelievable how badly Intel screwed up this implementation. To those of whom that say, 'Hey, works perfectly good for me so it must be perfect,' arw both ignorant and lucky enough not to have encountered it. They simply don't play a game or use an app that doesn't play well with P/E and Win11 thread scheduler. Depending on the game, you have to play with core affinities, thread scheduling policies and possibly completely disabling e-cores.

A big problem I found is that from 13th gen+, Windows still uses thread scheduling policies for P/E cores even if e-cores are disabled. If e-cores are disabled, there shoukd be no need to distinguish the difference between P/E cores. It shoukd just default to the standard core policy which it doesn't. It's quite infuriating.
I have a few questions. How does one gain insights into what the core policy is, standard or otherwise?
Even if you disable E-Cores, the thread scheduling policies may still screw things up with e-cores disabled.
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.
 
Even if you disable E-Cores, the thread scheduling policies may still screw things up with e-cores disabled.
In what way? Non-optimal use of HT, perhaps? And is it the same if you have an i3 or i5 without E cores?
 
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.
 
Last edited:
I havent really had issues gaming on my 13700k and I am using 10 without intel thread director.

However I have done some tweaking of the power profiles in windows which adjusts the scheduling behaviour.

My games will run by default on the P cores only based on my power profile settings pushing the load to p cores for FG applications.
I have HT off by default as I discovered its really inefficient, lots of extra power draw for little to no visible benefit.
I push many background apps/services to E cores only so dont get scheduling bottlenecks with FG applications aka games.
If I ever play a game thats really thread heavy, I would rather let it use E cores as extra cores than turn on HT.
I consider HT obsolete at this point.
Just in case I find software that runs better with HT on, I do have power profiles that will enable HT. I dont adjust it in the bios.

Final note, I have many games that have been CPU bottlenecked for several years, and even were on my 9900k, the 13700k is my first CPU where these games have broken through a barrier and the improvement is significant. Its possible me preventing scheduling bottlenecks with my use of E/P cores has contributed to this.

I tried to share some profiles on here but was no interest, I think hardly anyone is interested in diving deep into the windows power settings system (which also controls scheduling behaviour). I also use process hacker to lock in affinity overrides so this is not something I have to keep adjusting, its set and forget.
 
Last edited:
This probably does little more than providing the proper hints to the scheduler.
Is there a mechanism for providing useful hints to the scheduler? It has existed for a long time in my imagination but I haven't heard of it in the real world.
 
Is there a mechanism for providing useful hints to the scheduler? It has existed for a long time in my imagination but I haven't heard of it in the real world.
Personally I'd love the capability to program threads for P or E cores I explicitly so I can build application that more directly takes advantage of the hybrid architecture. Not sure if that is available.
 
Is there a mechanism for providing useful hints to the scheduler? It has existed for a long time in my imagination but I haven't heard of it in the real world.
 
The thread scheduler is broken and is nothing more than a pain in the ass if you also play older games. It's quite unbelievable how badly Intel screwed up this implementation. To those of whom that say, 'Hey, works perfectly good for me so it must be perfect,' arw both ignorant and lucky enough not to have encountered it. They simply don't play a game or use an app that doesn't play well with P/E and Win11 thread scheduler. Depending on the game, you have to play with core affinities, thread scheduling policies and possibly completely disabling e-cores.

A big problem I found is that from 13th gen+, Windows still uses thread scheduling policies for P/E cores even if e-cores are disabled. If e-cores are disabled, there shoukd be no need to distinguish the difference between P/E cores. It shoukd just default to the standard core policy which it doesn't. It's quite infuriating. Even if you disable E-Cores, the thread scheduling policies may still screw things up with e-cores disabled.

Having had a Raptor Lake processor for over a year, and primarily playing games that aren't exactly new, how is it broken exactly? And why is it Intel's fault that we're largely stuck with this fossilized operating system called Windows?
 
In what way? Non-optimal use of HT, perhaps? And is it the same if you have an i3 or i5 without E cores?
Check out my reply to 'A Computer Guy.' I believe it answers this question but I'll give a quick summary.

For one, if you use Windows 11, the thread scheduler is in play whether e-cores are disabled or not. The win11 scheduler is not needed with e-cores disabled, but Win11 forces you to go through it because it cannot be disabled. Also, particularly in Win11, even when e-cores are disabled, P&E core scheduling policies are still used when e-cores are disabled. This causes weird behavior in some cases, often resulting in stutter, lag, desync, etc. I've found that in single thread heavy apps, or older games that only use 1 or 2 cores, e-cores and the P&E thread scheduling policies completely break the game. If e-cores are disabled, all P&E thread scheduling policies should be promptly ignored, but they aren't. Win10 follows more traditional behavior where standard core parking and thread scheduling policies are used if e-cores are disabled. Also, there's no thread director in Win10 to interfere.
 
Check out my reply to 'A Computer Guy.' I believe it answers this question but I'll give a quick summary.

For one, if you use Windows 11, the thread scheduler is in play whether e-cores are disabled or not. The win11 scheduler is not needed with e-cores disabled, but Win11 forces you to go through it because it cannot be disabled. Also, particularly in Win11, even when e-cores are disabled, P&E core scheduling policies are still used when e-cores are disabled. This causes weird behavior in some cases, often resulting in stutter, lag, desync, etc. I've found that in single thread heavy apps, or older games that only use 1 or 2 cores, e-cores and the P&E thread scheduling policies completely break the game. If e-cores are disabled, all P&E thread scheduling policies should be promptly ignored, but they aren't. Win10 follows more traditional behavior where standard core parking and thread scheduling policies are used if e-cores are disabled. Also, there's no thread director in Win10 to interfere.

Thread director is done in hardware below the OS level though. It's Windows 10 that has no awareness of it
 
Having had a Raptor Lake processor for over a year, and primarily playing games that aren't exactly new, how is it broken exactly? And why is it Intel's fault that we're largely stuck with this fossilized operating system called Windows?
Check out my response to 'A Computer Guy.' I think it sums up the issue and answers this question. As to whose fault it is, I can't really say. Intel clearly had to work with Microsoft to implement the Win11 thread scheduler so I can't say who the brainchild behind it was.

I will say this which I haven't previously mentioned... I've Had Alder, Raptor and now Raptor Refresh, and they have all suffered from the same issues, primarily because there are 2 games I still like to play that are older and not designed for hybrid CPUs. The Window's scheduler and policies are only a part of the equation. The game itself needs to be coded and optimized for P&E cores as well. If it's not, then it's entirely up the the OS's thread scheduler to ensure the correct threads are being scheduled. The only games that appear to work without a hitch are newer more modern ones. Ones that are still actively being updated by DEVS. If you're playing an older game, then you are at the mercy of the thread scheduling logic built into the OS. Older games/apps are designed to work w/ 1 type of core since that's how it's always been prior to hybrid CPU's. If the game isn't specifically optimized for Hybrid CPU's, you end up w/ an app constantly fighting w/ the thread scheduler logic resulting in lag, stutter, etc. This is why so many people just disable e-cores altogether and move back to Windows 10. Here's an example of Intel providing documentation on how to optimize their games for the new Hybrid arch:


Thread director is done in hardware below the OS level though. It's Windows 10 that has no awareness of it
I don't understand what your point is, can you clarify? Yes, the thread scheduler only works in 11, not in 10.
 
Check out my response to 'A Computer Guy.' I think it sums up the issue and answers this question. As to whose fault it is, I can't really say. Intel clearly had to work with Microsoft to implement the Win11 thread scheduler so I can't say who the brainchild behind it was.

I will say this which I haven't previously mentioned... I've Had Alder, Raptor and now Raptor Refresh, and they have all suffered from the same issues, primarily because there are 2 games I still like to play that are older and not designed for hybrid CPUs. The Window's scheduler and policies are only a part of the equation. The game itself needs to be coded and optimized for P&E cores as well. If it's not, then it's entirely up the the OS's thread scheduler to ensure the correct threads are being scheduled. The only games that appear to work without a hitch are newer more modern ones. Ones that are still actively being updated by DEVS. If you're playing an older game, then you are at the mercy of the thread scheduling logic built into the OS. Older games/apps are designed to work w/ 1 type of core since that's how it's always been prior to hybrid CPU's. If the game isn't specifically optimized for Hybrid CPU's, you end up w/ an app constantly fighting w/ the thread scheduler logic resulting in lag, stutter, etc. This is why so many people just disable e-cores altogether and move back to Windows 10. Here's an example of Intel providing documentation on how to optimize their games for the new Hybrid arch:



I don't understand what your point is, can you clarify? Yes, the thread scheduler only works in 11, not in 10.
If it's such an issue for you, lock the threads manually with Process Lasso.
 
Check out my reply to 'A Computer Guy.' I believe it answers this question but I'll give a quick summary.

For one, if you use Windows 11, the thread scheduler is in play whether e-cores are disabled or not. The win11 scheduler is not needed with e-cores disabled, but Win11 forces you to go through it because it cannot be disabled. Also, particularly in Win11, even when e-cores are disabled, P&E core scheduling policies are still used when e-cores are disabled. This causes weird behavior in some cases, often resulting in stutter, lag, desync, etc. I've found that in single thread heavy apps, or older games that only use 1 or 2 cores, e-cores and the P&E thread scheduling policies completely break the game. If e-cores are disabled, all P&E thread scheduling policies should be promptly ignored, but they aren't. Win10 follows more traditional behavior where standard core parking and thread scheduling policies are used if e-cores are disabled. Also, there's no thread director in Win10 to interfere.
Thanks for the explanation. Did you find out exactly what these P&E scheduling policies are doing wrong? Are they forcing core parking too aggressively when there are no E cores, or something like that?
 
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.

I can attest to this for sure.

Falkentyne over at overclock.net had mentioned 13th Gen users leave at least one e-cores enabled do not disable all of them or P core performance becomes erratic a 13th Gen was somehow more dependent on them. I thought how could that be and he stated no one knows why. He mentioned something about single thread scores in Cinebench and CPU Z being all over the place with all e-cores off on a 13900K.

I tested it in WIN10 a bit over 1 year ago when I wanted all e-cores off and found no difference in single thread one e-core on all e-cores on or all disabled. Then I installed WIN11 and tested it and yes with all e-cores off it behaved weird and scores fluctuated at fixed clock speed. So yes WIN11 thread scheduler even all e-cores disabled uses a hybrid scheduler meant for P and E-cores and does not matter if you disable them or not. WIN10 does not and thus it treats it as a normal 8 core 16 thread CPU. And you cannot disable that on WIN11.

I wonder what about Core i3 and i5 CPUs with no e-cores. Their better be some hardware switch from Intel that fixes it in WIN11 or that would be a massive fail as the dies are the same mostly just parts that did not pass and thus disabled. Though I think the 6+0 die no e-cores is only 12th Gen which is not affected and some 6 P cores even with e-cores disabled on die are also 12th Gen just rebranded as 13th Gen low end or something??? And maybe all true Raptor Lake dies with parts disabled have no e-cores off when sold?? Not sure though?

As for the L3 latency thing with e-cores disabled, does that affect WIN10 to or just WIN11.
 
I was on win 10 with my 12700k, i switched to win 11 and it is very much snappier. Maybe because win 10 does not use the E cores and win 11 does which prooves they do make a difference.
 
Anyways back to original topic I posted.

Shortly after I returned 14th Gen and went back to 7800X3D. Not because I had issues with e-cores yet, but heat output is too high in a closed off case was a minor reason but even more major one is reliability is not consistent with 13th and 14th Gen Intel CPUs.

Even putting it at Intel specs, there are still some issues. Cinebench app error with everything auto and PL1 and PL2 at 253W and HT off but all e-cores on was the last straw for me.

And reports about these issues with Intel 13th and 14th gen started popping up everywhere:




Lots of different theories. Some think fast degradation. Baseline spec already too high. PCH cannot handle high load like a big engine but too weak fuel pump.

Anyways its a shame and Intel high end 10nm process node CPUs 13th Gen appear to have reliability concerns and that put me away more than anything.

Hopefully Arrow Lake and whatever process node its on Intel 20A and/or TSMC will be better and platinum stable and it ditches HT well good as HT not so great anyways and unneeded with e-cores.
 
Last edited:
Anyways back to original topic I posted.

Shortly after I returned 14th Gen and went backl to 7800X3D. Not because I had issues with e-cores yet, but heat output is too high in a closed off case was a minoir reason but even more major one is reliability is not consistent with 13th and 14th Gen Intel CPUs.

Even putting it at Intel specs, there are still some issues. Cinebench app error with everything auto and PL1 and PL2 and HT off but all e-cores on was the last straw for me.

And reports about these issues with Intel 13th and 14th gen started popping up everywhere:




Lots of different theories. Some think fast degradation. Baseline spec already too high. PCH cannot handle high load like a big engine but too weak fuel pump.

Anyways its a shame and Intel high end 10nm process node CPUs 13th Gen appear to have reliability concerns and that put me away more than anything.

Hopefully Arrow Lake will be better and platinum stable and it ditches HT well good as HT not so great anyways and unneeded with e-cores.

Maybe a good thing i kept hold of my 12700k, its been granite since i got it, had absolutley zero problems with this rig.
 
Then I installed WIN11 and tested it and yes with all e-cores off it behaved weird and scores fluctuated at fixed clock speed
If anyone encounters this situation, and finds disabling all e-cores counterproductive, the best solution might be to enable just one e-core in each cluster. Or maybe two. Can that be done at all? This way they would keep their maximum performance as they wouldn't have to compete with other e-cores for L2 and ring bus access.
 
for a while digital audio workstation performance was terrible w cpus w e cores... high af dpc latency and stuttering and cutouts.... some on the bitwig discord said it's not so bad at least w that DAW but others still have issues like fl studio and a handful of studio one producers...

music production is often the hardest thing for cpus since you can't have any stuttering specially when doing live shows and stuff... you are emulating entire hardware synthesizers when you use VSTs/CLAP plugins and even stock instruments in DAWs are emulating whole hardware synthesis! that's why it's so cpu intense and needs the best cpus.
 
Back
Top