Linux查看CPU信息
Linux查看CPU信息
引言
服务器扩容、压测、排查性能瓶颈前,先要知道机器几颗CPU、多少核、主频和架构。/proc/cpuinfo是内核暴露的原生信息,配合lscpu、nproc能快速拿到规格,top/mpstat再看实时占用。
lscpu看汇总
lscpu
一次列出架构、颗数、每颗核数、线程数、主频、缓存,最简洁。
nproc看逻辑核数
nproc
直接输出可用逻辑CPU数,脚本里取核数最方便。
读/proc/cpuinfo
cat /proc/cpuinfo
每颗逻辑核一段,看model name型号、cpu MHz频率、flags指令集。
统计物理颗数和核数
# 物理CPU颗数
grep "physical id" /proc/cpuinfo | sort -u | wc -l
# 每颗物理核数
grep "cpu cores" /proc/cpuinfo | uniq
# 逻辑核总数
grep -c processor /proc/cpuinfo
物理颗数×每颗核数×超线程=逻辑核数。
实时CPU占用
top
mpstat 1
top看整体和进程,mpstat每秒采样看用户态、系统态、idle占比。
注意事项
- 云主机看到的是分配的vCPU,不一定是物理独占;
- 超线程逻辑核不等于物理性能翻倍;
- flags里看是否支持虚拟化、AVX等指令集;
- 排查高占用先top按P按CPU排序找进程;
- 结合uptime看负载和核数是否匹配;
- lscpu在大部分发行版预装,无此命令再读/proc。
总结
规格用lscpu看汇总、nproc取核数、/proc/cpuinfo读型号和指令集,配合grep统计物理颗数与核数,实时占用用top和mpstat。压测和扩容前先分清物理核、逻辑核和超线程,避免按vCPU误判真实算力。