Skip to content

Commit 1eeb632

Browse files
Daniel Bristot de Oliveirarostedt
authored andcommitted
rtla/timerlat: Add timerlat hist mode
The rtla hist hist mode displays a histogram of each tracer event occurrence, both for IRQ and timer latencies. The tool also allows many configurations of the timerlat tracer and the collection of the tracer output. Here is one example of the rtla timerlat hist mode output: ---------- %< ---------- [root@alien ~]# rtla timerlat hist -c 0-3 -d 1M # RTLA timerlat histogram # Time unit is microseconds (us) # Duration: 0 00:01:00 Index IRQ-000 Thr-000 IRQ-001 Thr-001 IRQ-002 Thr-002 IRQ-003 Thr-003 0 58572 0 59373 0 58691 0 58895 0 1 1422 57021 628 57241 1310 56160 1102 56805 2 6 2931 0 2695 0 3567 4 3031 3 1 40 0 53 0 260 0 142 4 0 7 0 5 0 6 0 17 5 0 2 0 5 0 7 0 4 6 0 0 0 2 0 1 0 1 8 0 0 0 0 0 0 0 1 over: 0 0 0 0 0 0 0 0 count: 60001 60001 60001 60001 60001 60001 60001 60001 min: 0 1 0 1 0 1 0 1 avg: 0 1 0 1 0 1 0 1 max: 3 5 1 6 1 6 2 8 ---------- >% ---------- Running - rtla timerlat hist --help provides information about the available options. Link: https://lkml.kernel.org/r/7049ed3c46b7d6aceab18ffe7770003dfc4ddceb.1639158831.git.bristot@kernel.org Cc: Tao Zhou <tao.zhou@linux.dev> Cc: Ingo Molnar <mingo@redhat.com> Cc: Tom Zanussi <zanussi@kernel.org> Cc: Masami Hiramatsu <mhiramat@kernel.org> Cc: Juri Lelli <juri.lelli@redhat.com> Cc: Clark Williams <williams@redhat.com> Cc: John Kacur <jkacur@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Cc: Daniel Bristot de Oliveira <bristot@kernel.org> Cc: linux-rt-users@vger.kernel.org Cc: linux-trace-devel@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
1 parent a828cd1 commit 1eeb632

File tree

3 files changed

+828
-2
lines changed

3 files changed

+828
-2
lines changed

tools/tracing/rtla/src/timerlat.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ static void timerlat_usage(void)
2525
" usage: [rtla] timerlat [MODE] ...",
2626
"",
2727
" modes:",
28-
" top - prints the summary from timerlat tracer",
28+
" top - prints the summary from timerlat tracer",
29+
" hist - prints a histogram of timer latencies",
2930
"",
3031
"if no MODE is given, the top mode is called, passing the arguments",
3132
NULL,
@@ -60,6 +61,9 @@ int timerlat_main(int argc, char *argv[])
6061
} else if (strcmp(argv[1], "top") == 0) {
6162
timerlat_top_main(argc-1, &argv[1]);
6263
exit(0);
64+
} else if (strcmp(argv[1], "hist") == 0) {
65+
timerlat_hist_main(argc-1, &argv[1]);
66+
exit(0);
6367
}
6468

6569
usage:

tools/tracing/rtla/src/timerlat.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
// SPDX-License-Identifier: GPL-2.0
2-
2+
int timerlat_hist_main(int argc, char *argv[]);
33
int timerlat_top_main(int argc, char *argv[]);
44
int timerlat_main(int argc, char *argv[]);

0 commit comments

Comments
 (0)