linux-next/Documentation/tools/rtla/common_timerlat_options.rst
Tomas Glozar 13216486e3 rtla: Documentation: Mention --deepest-idle-state
Add --deepest-idle-state to manpage and mention libcpupower dependency
in README.txt.

Link: https://lore.kernel.org/20241017140914.3200454-7-tglozar@redhat.com
Signed-off-by: Tomas Glozar <tglozar@redhat.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2024-10-17 17:13:16 -04:00

58 lines
2.2 KiB
ReStructuredText

**-a**, **--auto** *us*
Set the automatic trace mode. This mode sets some commonly used options
while debugging the system. It is equivalent to use **-T** *us* **-s** *us*
**-t**. By default, *timerlat* tracer uses FIFO:95 for *timerlat* threads,
thus equilavent to **-P** *f:95*.
**-p**, **--period** *us*
Set the *timerlat* tracer period in microseconds.
**-i**, **--irq** *us*
Stop trace if the *IRQ* latency is higher than the argument in us.
**-T**, **--thread** *us*
Stop trace if the *Thread* latency is higher than the argument in us.
**-s**, **--stack** *us*
Save the stack trace at the *IRQ* if a *Thread* latency is higher than the
argument in us.
**-t**, **--trace** \[*file*]
Save the stopped trace to [*file|timerlat_trace.txt*].
**--dma-latency** *us*
Set the /dev/cpu_dma_latency to *us*, aiming to bound exit from idle latencies.
*cyclictest* sets this value to *0* by default, use **--dma-latency** *0* to have
similar results.
**--deepest-idle-state** *n*
Disable idle states higher than *n* for cpus that are running timerlat threads to
reduce exit from idle latencies. If *n* is -1, all idle states are disabled.
On exit from timerlat, the idle state setting is restored to its original state
before running timerlat.
Requires rtla to be built with libcpupower.
**-k**, **--kernel-threads**
Use timerlat kernel-space threads, in contrast of **-u**.
**-u**, **--user-threads**
Set timerlat to run without a workload, and then dispatches user-space workloads
to wait on the timerlat_fd. Once the workload is awakes, it goes to sleep again
adding so the measurement for the kernel-to-user and user-to-kernel to the tracer
output. **--user-threads** will be used unless the user specify **-k**.
**-U**, **--user-load**
Set timerlat to run without workload, waiting for the user to dispatch a per-cpu
task that waits for a new period on the tracing/osnoise/per_cpu/cpu$ID/timerlat_fd.
See linux/tools/rtla/sample/timerlat_load.py for an example of user-load code.