dstat如何衡量延迟?

时间:2016-02-27 01:28:56

标签: performance profiling monitoring benchmarking performance-testing

dstat提供--top-latency和--top-latency-avg插件,以显示具有最高延迟(以ms为单位)的进程。

它是如何工作的? 我运行一个简单的dd,它输出它的延迟,用这些插件运行dstat,我总结了这个过程的延迟,结果是不一样的。

实际上,它更高!在累计毫秒后,dd显示13s和dstat 21s。

我是否理解正确? 是否还有其他工具可以衡量每个进程的延迟?

2 个答案:

答案 0 :(得分:1)

考虑使用latencytop tool

<强>概要 latencytop [--unknown] [进程...]

说明(来自手册):

&#34; Latencytop是面向软件开发人员(内核和用户空间)的Linux *工具,旨在识别系统发生延迟的位置,以及导致延迟发生的操作/操作类型,以便代码可以更改,以避免最严重的延迟打嗝。&#34;

答案 1 :(得分:1)

dstat命令正在使用/proc/<PID>/schedstat中的信息。该文件的格式记录在https://www.kernel.org/doc/Documentation/scheduler/sched-stats.txt

您可以在dstat的源代码中看到它的用法: https://github.com/dagwieers/dstat/blob/master/plugins/dstat_top_latency.py#L42