首页/系统/Linux 运维命令速查/pidstat 按进程细粒度统计
性能与监控48 条

pidstat 按进程细粒度统计

pidstat 是「进程版 sar/iostat」:-u CPU、-r 内存、-d IO、-w 上下文切换、-t 线程级;定位具体进程的维度瓶颈。

Linux 运维命令速查系统更新于 2026-10-12
用途按进程/线程输出资源使用统计
语法pidstat [-u|-r|-d|-w] [-t] [-p PID] [间隔] [次数]
所属sysstat

常用示例

常用示例
pidstat -u 1 5
dpidstat -u -p $(pgrep -f app.jar | head -1) 1 5
pidstat -r -p 1234 1 5            # 内存(含 minor/major fault)
pidstat -d 1 5                    # IO
pidstat -w -t -p 1234 1 5         # 线程级上下文切换
线程级(-t)能看出锁竞争导致的切换风暴;结合 -w 的 cswch/nvcswch 区分自愿/非自愿切换。

易错点

  • 先找到 PID 再长期观测(pidstat -p 需要 PID 存活),进程重启后 PID 变化会跟丢
  • %CPU 在多核上是单核百分比口径:可能超过 100%(多线程之和)

数据来源与参考

  • man 1 pidstat(sysstat)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌