首页/系统/Linux 内核与性能调优速查/vmstat 的 r 列:运行队列长度
CPU 与调度60 条

vmstat 的 r 列:运行队列长度

r 列是等待运行的进程数(含正在运行);持续大于逻辑核数说明 CPU 侧排队,需要结合 cs/in 列区分缺 CPU、锁竞争还是中断风暴。

关注列r(运行队列)、cs(上下文切换)、in(中断)、us/sy/wa

采样与判读

采样与判读
vmstat 1 5
# r > 核数 且 us/sy 高 → CPU 饱和
# r 高 且 cs 极高 → 切换/锁竞争
# r 高 且 wa 高 → 等 IO

易错点

  • r 是瞬时采样值,偶发尖峰不等于饱和,多核要除以逻辑核数
  • wa 高且 r 高时根因在存储/网络 IO,别只在 CPU 侧调参

数据来源与参考

  • procps-ng 文档 vmstat(8)
  • Linux 内核 Documentation/accounting/
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌