From: <jiang.kun2@zte.com.cn>
To: <bsingharora@gmail.com>, <akpm@linux-foundation.org>,
<david@redhat.com>, <yang.yang29@zte.com.cn>
Cc: <linux-kernel@vger.kernel.org>, <linux-mm@kvack.org>,
<linux-doc@vger.kernel.org>, <wang.yong12@zte.com.cn>,
<wang.yaxin@zte.com.cn>, <fan.yu9@zte.com.cn>,
<he.peilin@zte.com.cn>, <tu.qiang35@zte.com.cn>,
<qiu.yutan@zte.com.cn>, <zhang.yunkai@zte.com.cn>,
<xu.xin16@zte.com.cn>
Subject: [PATCH linux next] docs: update docs after introducing delaytop
Date: Thu, 10 Jul 2025 13:51:41 +0800 (CST) [thread overview]
Message-ID: <2025071013514177028RdjISjqeIOnTCRvGAwy@zte.com.cn> (raw)
From: Wang Yaxin <wang.yaxin@zte.com.cn>
The "getdelays" can only display the latency of a single task
by specifying a PID, we introduce the "delaytop" with the
following capabilities:
1. system view: monitors latency metrics (CPU, I/O, memory, IRQ, etc.)
for all system processes
2. supports field-based sorting (e.g., default sort by CPU latency in
descending order)
3. dynamic interactive interface: focus on specific processes with
--pid; limit displayed entries with --processes 20; control monitoring
duration with --iterations;
Signed-off-by: Fan Yu <fan.yu9@zte.com.cn>
Signed-off-by: Wang Yaxin <wang.yaxin@zte.com.cn>
Signed-off-by: Jiang Kun <jiang.kun2@zte.com.cn>
---
Documentation/accounting/delay-accounting.rst | 47 +++++++++++++++++++
1 file changed, 47 insertions(+)
diff --git a/Documentation/accounting/delay-accounting.rst b/Documentation/accounting/delay-accounting.rst
index 210c194d4a7b..664950328fb7 100644
--- a/Documentation/accounting/delay-accounting.rst
+++ b/Documentation/accounting/delay-accounting.rst
@@ -131,3 +131,50 @@ Get IO accounting for pid 1, it works only with -p::
linuxrc: read=65536, write=0, cancelled_write=0
The above command can be used with -v to get more debug information.
+
+After the system starts, use `delaytop` to get the Top-N high-latency tasks.
+this tool supports sorting by CPU latency in descending order by default,
+displays the top 20 high-latency tasks by default, and refreshes the latency
+data every 2 seconds by default.
+
+Get Top-N tasks delay, since system boot::
+
+ bash# ./delaytop
+ Top 20 processes (sorted by CPU delay):
+
+ PID TGID COMMAND CPU(ms) IO(ms) SWAP(ms) RCL(ms) THR(ms) CMP(ms) WP(ms) IRQ(ms)
+ ---------------------------------------------------------------------------------------------
+ 32 32 kworker/2:0H-sy 23.65 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 497 497 kworker/R-scsi_ 1.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 495 495 kworker/R-scsi_ 1.13 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 494 494 scsi_eh_0 1.12 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 485 485 kworker/R-ata_s 0.90 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 574 574 kworker/R-kdmfl 0.36 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 34 34 idle_inject/3 0.33 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 1123 1123 nde-netfilter 0.28 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 60 60 ksoftirqd/7 0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 114 114 kworker/0:2-cgr 0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 496 496 scsi_eh_1 0.24 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 51 51 cpuhp/6 0.24 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 1667 1667 atd 0.24 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 45 45 cpuhp/5 0.23 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 1102 1102 nde-backupservi 0.22 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 1098 1098 systemsettings 0.21 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 1100 1100 audit-monitor 0.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 53 53 migration/6 0.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 1482 1482 sshd 0.19 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+ 39 39 cpuhp/4 0.19 0.00 0.00 0.00 0.00 0.00 0.00 0.00
+
+Dynamic interactive interface of delaytop::
+
+ # ./delaytop -p pid
+ Print delayacct stats
+
+ # ./delaytop -P num
+ Display the top N tasks
+
+ # ./delaytop -n num
+ Set delaytop refresh frequency (num times)
+
+ # ./delaytop -d secs
+ Specify refresh interval as secs
--
2.25.1
reply other threads:[~2025-07-10 5:51 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2025071013514177028RdjISjqeIOnTCRvGAwy@zte.com.cn \
--to=jiang.kun2@zte.com.cn \
--cc=akpm@linux-foundation.org \
--cc=bsingharora@gmail.com \
--cc=david@redhat.com \
--cc=fan.yu9@zte.com.cn \
--cc=he.peilin@zte.com.cn \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=qiu.yutan@zte.com.cn \
--cc=tu.qiang35@zte.com.cn \
--cc=wang.yaxin@zte.com.cn \
--cc=wang.yong12@zte.com.cn \
--cc=xu.xin16@zte.com.cn \
--cc=yang.yang29@zte.com.cn \
--cc=zhang.yunkai@zte.com.cn \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox