为什么 top 和 iostat 之间的 CPU 使用率百分比不同?

为什么 top 和 iostat 之间的 CPU 使用率百分比不同?

在负载很重的数据库服务器上,我得到的 CPU 使用率输出topiostatCPU 使用率输出有很大差异。为什么值会不同?


顶部:

%Cpu(s): 84.7 us, 11.8 sy,  0.3 ni,  2.4 id,  0.6 wa,  0.0 hi,  0.2 si,  0.1 st 

iostat

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          19.78    0.17    2.51    1.10    0.03   76.42

请注意,iostat报告的是显著的空闲百分比,但top事实并非如此。

答案1

这样做的原因是,在单次运行中iostat报告的统计数据是自系统启动以来的数据。iostat -c 2 2将自启动以来报告一次,然后 2 秒后报告自上一次以来的第二份报告。

在这种情况下,它与顶部紧密匹配。

相关内容