Question Question about P-cores versus E-cores

GeorgiaOverdrive

Distinguished
May 30, 2014
106
0
18,680
In an Intel CPU with performance cores and efficiency cores, suppose you are running two computationally intensive tasks, How would performance on two E-cores compare to running them hyperthreaded on one P-core?
 
In an Intel CPU with performance cores and efficiency cores, suppose you are running two computationally intensive tasks, How would performance on two E-cores compare to running them hyperthreaded on one P-core?
In the server world the all E-Core Xeon is said that each core is like a single thread of a P-Core (2 e-cores is equal to 1 p-core in performance). Overall the E-Core is about as fast as a Skylake CPU of equal clock speed.
 
Last edited:
  • Like
Reactions: Roland Of Gilead

Misgar

Respectable
Mar 2, 2023
1,715
445
2,090
hyperthreaded on one P-core
On older Intel CPUs, I used to believe that Hyperthreading increased perormance by roughly 20% in some apps, but I think I saw somewhere that Intel is getting rid of Hyperthreading on some modern CPUs.

Much of the time you don't have much control over which cores the scheduler assigns individual tasks to. Does it really matter to you? I'm guessing some games are happy with 8-cores. Other programs might benefit from 128-cores.
 
  • Like
Reactions: Roland Of Gilead
Games often run faster without HT. HT does bring an uplift in multicore performance benches and some apps, and sometimes more than 20%, but it also raises the power required too. Intel dropped HT with Alderlake. Saves them some power draw, and gives better efficiency, IIRC.
 

GeorgiaOverdrive

Distinguished
May 30, 2014
106
0
18,680
Thanks. Passmark gives Skylake a single-core performance of 2291, but double that for two of them, so 4582.

Passmark gives 4231 for a single core on i7-14700. When I did a test of hyperthreading years ago, it increased the throughput by 1.55x, so figure 6658 for two threads on a hypertreaded P-core. Which makes one hyperthreaded P-core about 43% faster than two E-cores.

A week ago I had 16 computationally intensive tasks running on a u7-12700. About 10 of them finished in 3 days - the rest took 5 days. I'm wondering if they got sent to E-cores.
 
The intel thread director is aware of the difference between P cores and E cores.
It is also aware of hyperthreading and will dispatch compute heavy threads first on the p cores and not their hyperthreaded companion cores.
E cores are, I think about 1/4 the capability of the P cores.
They are intended for low priority work.
 

GeorgiaOverdrive

Distinguished
May 30, 2014
106
0
18,680
OK, I was thinking of rerunning the program and use the resource manager to see which cores were being used. It should put it on the P-cores. I was running 16 computationally intensive tasks with 8 hyperthreaded P-cores and 4 E-cores. Each of the threads should take about the same amount of time, but over half finished in 3 days while others took 5 days.
 
Sep 17, 2024
8
0
10
The P-cores are running quite a bit beyond their sweet-spot in terms of power-efficiency curve, so on a per-watt basis the e-cores will look better for a generalized computational workload that's parallelized.
 

GeorgiaOverdrive

Distinguished
May 30, 2014
106
0
18,680
Power use is not much of a concern with the i7-12700s I'm using now. They use a fraction of what the Xeons from about 10 years ago that I was using last year. Getting the work done quickly is the primary concern.