如何在 Linux alder lake 系统中检测 E 核和 P 核?

How to detect E-cores and P-cores in Linux alder lake system?

如何检查特定的 cpu 内核属于 P 内核还是 E 内核组?有什么方法可以在 运行 Linux x86_64 alder lake 系统中列出有关 Performance/Energy 核心的信息吗?比如,打印任何 sysfs 参数?

我们可以识别哪个内核启用了 SMT (hyper-threading)。 运行:

lscpu --all --extended

这是 12900K 的结果:

➜ 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

现在,查看 CPU 列和 CORE 列。例如:

  • CPU0和CPU1属于CORE 0。因此,CORE 0是P-core带SMT的。
  • CPU16属于CORE 8。因此,CORE 8是一个E-core。

请注意,此方法仅在您未在 BIOS 中明确禁用 P-core 的 SMT 时才有效。如果您在 BIOS 中禁用了 SMT,您可以按照 Peter 评论中的建议查看 MAXMHZ 列。