common_timerlat_options.rst 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. **-a**, **--auto** *us*
  2. Set the automatic trace mode. This mode sets some commonly used options
  3. while debugging the system. It is equivalent to use **-T** *us* **-s** *us*
  4. **-t**. By default, *timerlat* tracer uses FIFO:95 for *timerlat* threads,
  5. thus equilavent to **-P** *f:95*.
  6. **-p**, **--period** *us*
  7. Set the *timerlat* tracer period in microseconds.
  8. **-i**, **--irq** *us*
  9. Stop trace if the *IRQ* latency is higher than the argument in us.
  10. **-T**, **--thread** *us*
  11. Stop trace if the *Thread* latency is higher than the argument in us.
  12. **-s**, **--stack** *us*
  13. Save the stack trace at the *IRQ* if a *Thread* latency is higher than the
  14. argument in us.
  15. **-t**, **--trace** \[*file*]
  16. Save the stopped trace to [*file|timerlat_trace.txt*].
  17. **--dma-latency** *us*
  18. Set the /dev/cpu_dma_latency to *us*, aiming to bound exit from idle latencies.
  19. *cyclictest* sets this value to *0* by default, use **--dma-latency** *0* to have
  20. similar results.
  21. **-k**, **--kernel-threads**
  22. Use timerlat kernel-space threads, in contrast of **-u**.
  23. **-u**, **--user-threads**
  24. Set timerlat to run without a workload, and then dispatches user-space workloads
  25. to wait on the timerlat_fd. Once the workload is awakes, it goes to sleep again
  26. adding so the measurement for the kernel-to-user and user-to-kernel to the tracer
  27. output. **--user-threads** will be used unless the user specify **-k**.
  28. **-U**, **--user-load**
  29. Set timerlat to run without workload, waiting for the user to dispatch a per-cpu
  30. task that waits for a new period on the tracing/osnoise/per_cpu/cpu$ID/timerlat_fd.
  31. See linux/tools/rtla/sample/timerlat_load.py for an example of user-load code.