6

I have an Intel hybrid CPU (Alder Lake). This means it has some number of P-cores, and some number of E-cores. Additionally, the P-cores are hyper-threaded.

Task Manager, and other performance and temperature monitoring programs, report all these CPU cores (or hardware threads, including HT) numerically with no distinction for type. For example, on a 8P+8E CPU, there's a total of 24 'cores' reported by such tools, numbered 0 through 23.

How do I tell which type of physical core each corresponds to? If I notice 100% utilisation on "CPU 5", is that a P-core or an E-core? If it's a P-core, which number is the HT core it's paired with?

1 Answer 1

6

AIDA64 can identify CPU core type (and usage) in Windows

(note that I don't own a hybrid CPU with P/E cores, so I can't test this directly)

AIDA64 has a 'CPU Utilization' section, which shows info on CPU type:

AIDa64 screnshot

(credit to 1nteldevteam on the Intel forums)

Cores are grouped by CPU (only one in the image above), then first pairs of cores which correspond to HT units, then individual E cores.

This pattern seems to hold for other reporting tools like Task Manager, but that may not be guaranteed. OP reports in a comment:

Through careful use of FurMark's CPU Burner tool and processor affinities (via Task Manager), I can confirm that the order listed in AIDA64 matches up with the order shown in Task Manager. Assuming this pattern holds, this also tells us that the cores are presented as HT-paired P-cores followed by the E-cores.

(emphasis mine)

For Linux, use lscpu

While you asked about Windows, there is an answer on SO that covers Linux:

Run lscpu --all --extended

➜ lscpu --all --extended
CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE    MAXMHZ   MINMHZ
  0    0      0    0 0:0:0:0          yes 6700.0000 800.0000
  1    0      0    0 0:0:0:0          yes 6700.0000 800.0000
  2    0      0    1 1:1:1:0          yes 6700.0000 800.0000
  3    0      0    1 1:1:1:0          yes 6700.0000 800.0000
  4    0      0    2 2:2:2:0          yes 6500.0000 800.0000
  5    0      0    2 2:2:2:0          yes 6500.0000 800.0000
  6    0      0    3 3:3:3:0          yes 6500.0000 800.0000
  7    0      0    3 3:3:3:0          yes 6500.0000 800.0000
  8    0      0    4 4:4:4:0          yes 6500.0000 800.0000
  9    0      0    4 4:4:4:0          yes 6500.0000 800.0000
 10    0      0    5 5:5:5:0          yes 6500.0000 800.0000
 11    0      0    5 5:5:5:0          yes 6500.0000 800.0000
 12    0      0    6 6:6:6:0          yes 6500.0000 800.0000
 13    0      0    6 6:6:6:0          yes 6500.0000 800.0000
 14    0      0    7 7:7:7:0          yes 6500.0000 800.0000
 15    0      0    7 7:7:7:0          yes 6500.0000 800.0000
 16    0      0    8 8:8:8:0          yes 3900.0000 800.0000
 17    0      0    9 9:9:8:0          yes 3900.0000 800.0000
 18    0      0   10 10:10:8:0        yes 3900.0000 800.0000
 19    0      0   11 11:11:8:0        yes 3900.0000 800.0000
 20    0      0   12 12:12:9:0        yes 3900.0000 800.0000
 21    0      0   13 13:13:9:0        yes 3900.0000 800.0000
 22    0      0   14 14:14:9:0        yes 3900.0000 800.0000
 23    0      0   15 15:15:9:0        yes 3900.0000 800.0000

Credit goes to Yixing for their answer.

On MacOS, you can use powermetrics

For those on Apple hardware, there is a relevant answer on AskDifferent

sudo powermetrics -s cpu_power

P cores:

powermentris P core screeshot

E cores:

powermetrics E core screenshot

Credit to JMY1000 for their answer and the two images included above.

You can read the powermetrics manpage online.

1
  • 2
    Through careful use of FurMark's CPU Burner tool and processor affinities (via Task Manager), I can confirm that the order listed in AIDA64 matches up with the order shown in Task Manager. Assuming this pattern holds, this also tells us that the cores are presented as HT-paired P-cores followed by the E-cores.
    – Bob
    Aug 8 at 11:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.