实战
lscpu
# Architecture: x86_64
# CPU op-mode(s): 32-bit, 64-bit
# Byte Order: Little Endian
# CPU(s): 8
# Vendor ID: GenuineIntel
# Model name: Intel(R) Xeon(R) CPU
# Core(s) per socket: 4
# Socket(s): 1
# Thread(s) per core: 2
# CPU MHz: 2400
# Cache L1/L2/L3: ...
关键字段:
| 字段 | 意义 |
|---|---|
CPU(s) |
总逻辑核数(含超线程) |
Core(s) per socket |
每个物理 CPU 多少核 |
Socket(s) |
物理 CPU 数量 |
Thread(s) per core |
1 或 2(超线程开/关) |
Model name |
型号 |
Architecture |
x86_64 / aarch64 / ... |
简单版
nproc # 只输出"逻辑核数"(最常用)
# 8
nproc --all # 含禁用的核
其他来源
cat /proc/cpuinfo # 详细原始信息
cat /proc/cpuinfo | grep "model name" | uniq
cat /proc/cpuinfo | grep "MHz" | head
实时频率
CPU 频率会根据负载动态调整:
watch -n 1 'cat /proc/cpuinfo | grep MHz'
看是否支持某特性
lscpu | grep Flags # 一长行 flags
grep -o 'avx[0-9]*' /proc/cpuinfo | sort -u # 看 AVX 支持
grep vmx /proc/cpuinfo # 看虚拟化支持
坑
- 容器里的 lscpu 可能显示宿主的全部核数——容器实际限制看 cgroup
nproc取决于 cgroup / taskset 限制——容器里更准- 主频是动态的——只看
cpuinfo的 MHz 不准,要看cpupower frequency-info