Ubuntu CPUInfo 关键数据解读
一、快速查看与定位
二、lscpu 关键字段与含义
| 字段 | 含义 | 如何计算或判断 |
|---|---|---|
| Architecture | CPU 架构(如 x86_64、aarch64) | 与软件兼容、编译目标相关 |
| CPU op-mode(s) | 支持的指令集模式(如 32-bit, 64-bit) | 是否支持 64 位 |
| CPU(s) | 逻辑 CPU 总数 | 并行线程上限之一 |
| Thread(s) per core | 每核心线程数(超线程) | 1=无超线程,2=通常开启超线程 |
| Core(s) per socket | 每插槽物理核心数 | 单颗 CPU 的物理核心 |
| Socket(s) | 物理插槽数 | 物理 CPU 颗数 |
| NUMA node(s) | NUMA 节点数 | 多路 CPU/多内存通道拓扑相关 |
| Model name | CPU 型号与标称频率 | 影响指令集、微架构特性 |
| CPU MHz / BogoMIPS | 当前/估算频率 | 实时频率会随负载与省电策略变化 |
| L1d/L1i/L2/L3 cache | 各级缓存大小 | 影响命中率与延迟 |
| Virtualization | 虚拟化支持(如 VT‑x/AMD‑V) | 是否可直通/嵌套虚拟化 |
| On-line CPU(s) list | 当前在线逻辑 CPU 列表 | 结合 CPU(s) 判断是否离线降配 |
| 以上字段由 lscpu 直接输出,适合一眼掌握拓扑与能力。 |
三、/proc/cpuinfo 常用字段与判断方法
| 字段 | 含义 | 典型用法/判断 |
|---|---|---|
| processor | 逻辑处理器编号(从 0 起) | 统计逻辑 CPU 数量 |
| physical id | 物理 CPU 编号 | 统计物理 CPU 颗数 |
| core id | 物理核心编号(在同一物理 CPU 内) | 结合 physical id 判断超线程 |
| cpu cores | 该物理 CPU 的核心数 | 单颗 CPU 的物理核心 |
| siblings | 该物理 CPU 的逻辑处理器数 | 与 cpu cores 对比判断是否启用超线程 |
| model name | CPU 型号与标称频率 | 与 lscpu 的 Model name 一致 |
| cpu MHz | 当前运行频率 | 动态变化,非固定标称值 |
| cache size | 缓存大小 | 通常为 L3 缓存 |
| flags | 指令集特性标志 | 如 lm(Long Mode,支持 64 位) |
| fpu | 浮点单元是否存在 | 一般为 yes |
| 实用命令(统计与判断): |
cat /proc/cpuinfo | grep 'physical id' | sort | uniq | wc -lcat /proc/cpuinfo | grep 'processor' | wc -lcat /proc/cpuinfo | grep 'cpu cores' | uniqcat /proc/cpuinfo | grep 'flags' | grep -q ' lm ' && echo "64-bit supported" || echo "Not 64-bit"(lm 表示 Long Mode)四、拓扑计算与示例