cpu性能分析工具

工具描述
uptime平均负载
vmstat包括系统范围内的平均负载
mpstat查看所有cpu核信息
top监控每个进程的cpu用量
sar -u查看cpu信息
pidstat每个进程的cpu用量分解
perfcpu剖析和跟踪,性能计数分析

使用方式

mpstat
mpstat -P ALL 1

功能:查看所有cpu核信息,其中-P选项后表示要查看的cpu核编号,ALL表示查看所有核,1表示没搁1秒输出一次信息 输出如下:

08时35分00秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
08时35分01秒  all    0.50    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.50
08时35分01秒    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
08时35分01秒    1    1.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
​

输出说明

  • %usr: 用户空间程序占用CPU的百分比。

  • %nice: 以较高优先级运行的nice程序占用CPU的百分比。

  • %sys: 内核占用CPU的百分比。

  • %iowait: CPU等待I/O操作完成的时间百分比。

  • %irq: CPU处理硬件中断的时间百分比。

  • %soft: CPU处理软中断的时间百分比。

  • %steal: CPU被虚拟机监控程序(hypervisor)偷取的时间百分比。

  • %guest: CPU运行虚拟机的时间百分比。

  • %gnice: 以较高优先级运行的虚拟机的nice程序占用CPU的百分比。

  • %idle: CPU空闲时间的百分比。

vmstat

功能:查看cpu使用情况及平均负载 输出如下:

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 1958492 162308 1153876    0    0   882   176  125  236  1  1 97  0  0
 0  0      0 1958532 162308 1153920    0    0     0     0  116  164  1  0 100  0  0
 0  0      0 1958532 162308 1153920    0    0     0     0  118  181  0  1 99  0  0
 0  0      0 1958532 162308 1153920    0    0     0     0  107  164  0  1 100  0  0
 0  0      0 1958532 162308 1153920    0    0     0     0  117  177  1  0 100  0  0
 0  0      0 1958532 162308 1153920    0    0     0     0  111  163  0  0 100  0  0

输出说明:

  • procs

    • r: 等待运行的进程数。

    • b: 处于不可中断睡眠状态的进程数。

  • memory

    • swpd: 虚拟内存使用量。

    • free: 空闲的物理内存量。

    • buff: 用作缓冲的内存量。

    • cache: 用作缓存的内存量。

  • swap

    • si: 从交换空间(swap)读入内存的数据量。

    • so: 写入交换空间的数据量。

  • io

    • bi: 从块设备读取的数据量。

    • bo: 写入块设备的数据量。

  • system

    • in: 每秒的中断次数,包括时钟中断。

    • cs: 每秒的上下文切换次数。

  • cpu(各项表示CPU时间的百分比)

    • us: 用户进程占用CPU的百分比。

    • sy: 系统进程占用CPU的百分比。

    • id: CPU空闲时间的百分比。

    • wa: CPU等待I/O的百分比。

    • st: 被偷取的时间百分比(通常在虚拟环境中)。

pidstat
pidstat -u 1 -p pid

功能:查看进程cpu的统计信息,其中-u选项表示显示用户级别的cpu使用情况,当然-s选项表示显示系统级别的cpu使用情况

输出:

08时42分02秒   UID       PID    %usr %system  %guest   %wait    %CPU   CPU  Command
08时42分03秒  1000      2171    0.00    0.00    0.00    0.00    0.00     0  bash
08时42分04秒  1000      2171    0.00    0.00    0.00    0.00    0.00     0  bash
08时42分05秒  1000      2171    0.00    0.00    0.00    0.00    0.00     0  bash
08时42分06秒  1000      2171    0.00    0.00    0.00    0.00    0.00     0  bash
08时42分07秒  1000      2171    0.00    0.00    0.00    0.00    0.00     0  bash
08时42分08秒  1000      2171    0.00    0.00    0.00    0.00    0.00     0  bash

输出说明

  • 时间戳:格式为 HH:MM:SS,表示每次采样的时间点。

  • UID:进程所属用户的用户标识符(User ID)。

  • PID:进程标识符(Process ID)。

  • %usr:用户级别CPU使用率,表示进程在用户空间执行代码所占的CPU时间百分比。

  • %system:系统级别CPU使用率,表示进程在内核空间执行代码所占的CPU时间百分比。

  • %guest:虚拟CPU使用率,表示进程在虚拟CPU上运行的时间百分比。

  • %wait:等待CPU的时间百分比,表示进程等待CPU时间所占的百分比。

  • %CPU:总CPU使用率,表示进程在所有CPU上的总体CPU使用情况百分比。

  • CPU:进程所运行的CPU编号。

  • Command:进程的命令名称。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值