在 Linux 中,读取 CPU 信息最常用的方式有以下几种,按常见程度从高到低说明:
/proc/cpuinfo(最常用)cat /proc/cpuinfo
processor:逻辑 CPU 编号(从 0 开始)physical id:物理 CPU 编号core id:核心编号cpu cores:每个物理 CPU 的核心数siblings:每个物理 CPU 的逻辑 CPU 数model name:CPU 型号flags:CPU 支持的指令集(如 avx, sse 等)grep -c processor /proc/cpuinfo
grep "physical id" /proc/cpuinfo | sort -u | wc -l
lscpu(推荐,信息更清晰)lscpu
输出示例(简化):
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 2
Core(s) per socket: 4
Socket(s): 1
Model name: Intel(R) Core(TM) i7-xxxx
lscpu | grep -E "CPU\(s\)|Core|Socket|Thread"
nproc(只看逻辑 CPU 数)nproc
# 当前频率
cat /proc/cpuinfo | grep "cpu MHz"
# 或
lscpu | grep MHz
grep "model name" /proc/cpuinfo | uniq
with open("/proc/cpuinfo") as f:
print(f.read())
#include <stdio.h>
int main() {
system("cat /proc/cpuinfo");
return 0;
}
如果你是想:
可以告诉我具体场景,我可以给你更针对性的方法。