linux/Documentation/tools/rtla
Daniel Bristot de Oliveira a23c05fd76 tools/rtla: Add -U/--user-load option to timerlat
The timerlat tracer provides an interface for any application to wait
for the timerlat's periodic wakeup. Currently, rtla timerlat uses it
to dispatch its user-space workload (-u option).

But as the tracer interface is generic, rtla timerlat can also be used
to monitor any workload that uses it. For example, a user might
place their own workload to wait on the tracer interface, and
monitor the results with rtla timerlat.

Add the -U option to rtla timerlat top and hist. With this option, rtla
timerlat will not dispatch its workload but only setting up the
system, waiting for a user to dispatch its workload.

The sample code in this patch is an example of python application
that loops in the timerlat tracer fd.

To use it, dispatch:

 # rtla timerlat -U

In a terminal, then run the python program on another terminal,
specifying the CPU to run it. For example, setting on CPU 1:

 #./timerlat_load.py 1

Then rtla timerlat will start printing the statistics of the
./timerlat_load.py app.

An interesting point is that the "Ret user Timer Latency" value
is the overall response time of the load. The sample load does
a memory copy to exemplify that.

The stop tracing options on rtla timerlat works in this setup
as well, including auto analysis.

Link: https://lkml.kernel.org/r/36e6bcf18fe15c7601048fd4c65aeb193c502cc8.1707229706.git.bristot@kernel.org

Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org>
2024-03-20 05:39:06 +01:00
..
common_appendix.rst rtla: Documentation: fix email addresses 2022-04-20 02:39:16 -06:00
common_hist_options.rst rtla/hist: Make -E the short version of --entries 2022-02-25 21:05:30 -05:00
common_options.rst rtla: Add --house-keeping option 2023-06-13 16:26:03 -04:00
common_osnoise_description.rst rtla: Fix systme -> system typo on man page 2022-02-23 21:52:18 -05:00
common_osnoise_options.rst rtla/osnoise: Add the automatic trace option 2022-03-15 14:36:49 -04:00
common_timerlat_aa.rst rtla/timerlat_hist: Add auto-analysis support 2023-06-13 16:35:46 -04:00
common_timerlat_description.rst rtla: Add rtla timerlat documentation 2022-01-13 17:02:43 -05:00
common_timerlat_options.rst tools/rtla: Add -U/--user-load option to timerlat 2024-03-20 05:39:06 +01:00
common_top_options.rst rtla: Add rtla osnoise top documentation 2022-01-13 17:02:43 -05:00
index.rst Documentation/rtla: Add hwnoise man page 2023-02-13 23:56:46 -05:00
Makefile rtla/Makefile: Properly handle dependencies 2022-05-26 15:17:48 -04:00
rtla-hwnoise.rst Documentation/rtla: Add hwnoise man page 2023-02-13 23:56:46 -05:00
rtla-osnoise-hist.rst rtla/hist: Make -E the short version of --entries 2022-02-25 21:05:30 -05:00
rtla-osnoise-top.rst rtla: Add rtla osnoise top documentation 2022-01-13 17:02:43 -05:00
rtla-osnoise.rst
rtla-timerlat-hist.rst rtla: fix a example in rtla-timerlat-hist.rst 2023-09-22 14:44:04 +02:00
rtla-timerlat-top.rst Documentation: Fix typos 2023-08-18 11:29:03 -06:00
rtla-timerlat.rst rtla: Add rtla timerlat documentation 2022-01-13 17:02:43 -05:00
rtla.rst