CPU监控命令之mpstat命令
1概述:
mpstat命令指令主要用于多CPU环境下,它显示各个可用CPU的状态系你想。这些信息存放在/proc/stat文件中。在多CPUs系统里,其不但能查看所有CPU的平均状况信息,而且能够查看特定CPU的信息。
2常用命令格式:
mpstat(选项)(参数)
3命令参数:
-P: {|ALL} 表示监控哪个CPU, cpu在[0,cpu个数-1]中取值
internal: 相邻的两次采样的间隔时间、
count: 采样的次数,count只能和delay一起使用
当没有参数时,mpstat则显示系统启动以后所有信息的平均值。有interval时,第一行的信息自系统启动以来的平均信息。从第二行开始,输出为前一个interval时间段的平均信息。
4使用实例:
01
实例1:
命令:直接使用mpstat命令:
mpstat
输出:
当mpstat不带参数时,输出为从系统启动以来的平均值。
02
实例2:
命令:查看多核CPU核心的当前运行状况信息, 每2秒更新一次,生成一个
mpstat -P ALL 2 1
输出:
说明:
%user:在internal时间段里,用户态的CPU时间(%),不包含nice值为负进程 (usr/total)*100
%nice:在internal时间段里,nice值为负进程的CPU时间(%) (nice/total)*100
%sys :在internal时间段里,内核时间(%) (system/total)*100
%iowait:在internal时间段里,硬盘IO等待时间(%) (iowait/total)*100
%irq:在internal时间段里,硬中断时间(%) (irq/total)*100
%soft:在internal时间段里,软中断时间(%) (softirq/total)*100
%idle:在internal时间段里,CPU除去等待磁盘IO操作外的因为任何原因而空闲的时间闲置时间(%) (idle/total)*100
5注意:
1.vmstat和mpstat 命令的差别:mpstat 可以显示每个处理器的统计,而 vmstat 显示所有处理器的统计。因此,编写糟糕的应用程序(不使用多线程体系结构)可能会运行在一个多处理器机器上,而不使用所有处理器。从而导致一个 CPU 过载,而其他 CPU 却很空闲。通过 mpstat 可以轻松诊断这些类型的问题。2.vmstat中所有关于CPU的总结都适合mpstat。当您看到较低的 %idle 数字时,您知道出现了 CPU 不足的问题。当您看到较高的 %iowait 数字时,您知道在当前负载下 I/O 子系统出现了某些问题。