1RTLA-OSNOISE-TOP(1)                                        RTLA-OSNOISE-TOP(1)
2
3
4

NAME

6       rtla-osnoise-top - Display a summary of the operating system noise
7

SYNOPSIS

9       rtla osnoise top [OPTIONS]
10

DESCRIPTION

12       The  rtla  osnoise tool is an interface for the osnoise tracer. The os‐
13       noise tracer dispatches a kernel thread per-cpu. These threads read the
14       time  in  a  loop while with preemption, softirq and IRQs enabled, thus
15       allowing all the sources of operating system noise  during  its  execu‐
16       tion.  The osnoise's tracer threads take note of the delta between each
17       time read, along with an interference counter of all sources of  inter‐
18       ference.  At the end of each period, the osnoise tracer displays a sum‐
19       mary of the results.
20
21       rtla osnoise top collects the periodic summary from the osnoise tracer,
22       including  the  counters  of the occurrence of the interference source,
23       displaying the results in a user-friendly format.
24
25       The tool also allows many configurations of the osnoise tracer and  the
26       collection of the tracer output.
27

OPTIONS

29       -a, --auto us
30          Set  the automatic trace mode. This mode sets some commonly used op‐
31          tions while debugging the system. It is equivalent to use -s us -T 1
32          -t.
33
34       -p, --period us
35          Set the osnoise tracer period in microseconds.
36
37       -r, --runtime us
38          Set the osnoise tracer runtime in microseconds.
39
40       -s, --stop us
41          Stop the trace if a single sample is higher than the argument in mi‐
42          croseconds.  If -T is set, it will also save the trace to  the  out‐
43          put.
44
45       -S, --stop-total us
46          Stop  the  trace  if the total sample is higher than the argument in
47          microseconds.  If -T is set, it will also save the trace to the out‐
48          put.
49
50       -T, --threshold us
51          Specify  the  minimum  delta between two time reads to be considered
52          noise.  The default threshold is 5 us.
53
54       -q, --quiet
55          Print only a summary at the end of the session.
56
57       -c, --cpus cpu-list
58          Set the osnoise tracer to run the sample threads in the cpu-list.
59
60       -d, --duration time[s|m|h|d]
61          Set the duration of the session.
62
63       -D, --debug
64          Print debug info.
65
66       -t, --trace[=file]
67          Save the stopped trace to [file|osnoise_trace.txt].
68
69       -e, --event sys:event
70          Enable an event in the trace (-t) session. The  argument  can  be  a
71          specific event, e.g., -e sched:sched_switch, or all events of a sys‐
72          tem group, e.g., -e sched. Multiple -e are allowed. It is  only  ac‐
73          tive when -t or -a are set.
74
75       --filter <filter>
76          Filter  the  previous  -e sys:event event with <filter>. For further
77          information        about         event         filtering         see
78          https://www.kernel.org/doc/html/latest/trace/events.html#event-filtering.
79
80       --trigger <trigger>
81              Enable a trace event trigger to the previous -e  sys:event.   If
82              the hist: trigger is activated, the output histogram will be au‐
83              tomatically saved to a file  named  system_event_hist.txt.   For
84              example, the command:
85
86              rtla   <command>   <mode>   -t   -e   osnoise:irq_noise  --trig‐
87              ger="hist:key=desc,duration/1000:sort=desc,dura‐
88              tion/1000:vals=hitcount"
89
90              Will  automatically save the content of the histogram associated
91              to osnoise:irq_noise event in osnoise_irq_noise_hist.txt.
92
93              For   further    information    about    event    trigger    see
94              https://www.kernel.org/doc/html/latest/trace/events.html#event-triggers.
95
96       -P, --priority o:prio|r:prio|f:prio|d:runtime:period
97          Set scheduling parameters to the osnoise tracer threads, the  format
98          to set the priority are:
99
100o:prio - use SCHED_OTHER with prio;
101
102r:prio - use SCHED_RR with prio;
103
104f:prio - use SCHED_FIFO with prio;
105
106d:runtime[us|ms|s]:period[us|ms|s]  - use SCHED_DEADLINE with run‐
107            time and period in nanoseconds.
108
109       -h, --help
110          Print help menu.
111

EXAMPLE

113       In the example below, the rtla osnoise top tool is set to  run  with  a
114       real-time priority FIFO:1, on CPUs 0-3, for 900ms at each period (1s by
115       default). The reason for reducing the runtime is to avoid starving  the
116       rtla  tool. The tool is also set to run for one minute and to display a
117       summary of the report at the end of the session:
118
119          [root@f34 ~]# rtla osnoise top -P F:1 -c 0-3 -r 900000 -d 1M -q
120                                                  Operating System Noise
121          duration:   0 00:01:00 | time is in us
122          CPU Period       Runtime        Noise  % CPU Aval   Max Noise   Max Single          HW          NMI          IRQ      Softirq       Thread
123            0 #59         53100000       304896    99.42580        6978           56         549            0        53111         1590           13
124            1 #59         53100000       338339    99.36282        8092           24         399            0        53130         1448           31
125            2 #59         53100000       290842    99.45227        6582           39         855            0        53110         1406           12
126            3 #59         53100000       204935    99.61405        6251           33         290            0        53156         1460           12
127

SEE ALSO

129       rtla-osnoise(1), rtla-osnoise-hist(1)
130
131       Osnoise              tracer              documentation:              <‐
132       https://www.kernel.org/doc/html/latest/trace/osnoise-tracer.html>
133

AUTHOR

135       Written by Daniel Bristot de Oliveira <bristot@kernel.org>
136

REPORTING BUGS

138       Report bugs to <lkml@vger.kernel.org>
139

LICENSE

141       rtla is Free Software licensed under the GNU GPLv2
142

COPYING

144       Copyright  (C)  2021 Red Hat, Inc. Free use of this software is granted
145       under the terms of the GNU Public License (GPL).
146
147
148
149
150                                                           RTLA-OSNOISE-TOP(1)
Impressum