Linux CPU性能工具

161 阅读1分钟
CPU性能工具
性能指标性能工具说明
平均负载uptime top /proc/loadavguptime最简单;top提供了更全的指标;/proc/loadavg常用于监控系统。 system load avg over the last 1, 5 and 15 minutes
系统CPU使用率vmstat mpstat top sar /proc/stattop、vmstat、mpstat 只可以动态查看,而sar还可以记录历史数据;/proc/stat是其他性能工具的数据来源,也常用于监控
进程CPU使用率top ps pidstat htop atoptop和ps可以按CPU使用率给进程排序;而pidstat只显示实际用了CPU的进程;htop和atop以不同颜色显示更直观
系统上下文切换vmstat除了上下文切换次数,还提供运行状态和不可中断状态进程的数量
进程上下文切换pidstat注意加上-w选项
软中断top mpstat /proc/softirqstop提供软中断CPU使用率;/proc/softirqs和mpstat提供了各种软中断在每个CPU上的运行次数
硬中断vmstat /proc/int erruptsvmstat提供总的中断次数;/proc/interrupts提供各种中断在每个CPU上运行的累积次数
网络dstat sar tcpdumpdstat和sar提供总的网络接收和发送情况;tcpdump则是动态抓取正在进行的网络通讯
CPU缓存perf使用 perf stat 子命令
CPU数lscpu /proc/cpuinfolscpu更直观
事件剖析perf、火焰图、execsnoopperf和火焰图用来分析热点函数以及调用栈,execsnoop用来监测短时进程
动态追踪ftrace bcc、 systemtapftrace用于跟踪内核函数调用栈;bcc和systemtap则用于跟踪内核或应用程序的执行过程(注意bcc要求内核版本>=4.1)

工具不在多,选择几个顺手的使用即可。