====== HOWTO: RT tools and utilities ====== Following are the tools and utilities which might be helpful to someone who is trying to write an userspace application or make changes to the real-time kernel: ---- ===== Test Suites ===== There are several test suites available: * [[realtime:documentation:howto:tools:ltp|Linux Test Project]] * [[realtime:documentation:howto:tools:rt-tests|rt-tests]] ===== Resource Partitioning ===== * [[realtime:documentation:howto:tools:cpu-partitioning:start|CPU Partitioning]] ===== Latency detection ===== Information about latency debugging techniques is available [[realtime:documentation:howto:debugging:start|here]]. The following tools can be useful for latency detection: * [[realtime:documentation:howto:tools:rtla|The realtime Linux analysis tool (RTLA)]] * [[realtime:documentation:howto:tools:cyclictest:start|Cyclictest]] (part of the test suite [[realtime:documentation:howto:tools:rt-tests|rt-tests]]) * [[realtime:documentation:howto:tools:ftrace|Ftrace]] * [[realtime:documentation:howto:tools:lttng|LTTng]] * [[realtime:documentation:howto:tools:latency-tracker|latency-tracker]] * [[realtime:documentation:howto:tools:hwlat|Ftrace - hwlat tracer]] * [[realtime:documentation:howto:tools:perf-smi-cost|Perf stat - Cost of SMI handling]] * [[https://www.brendangregg.com/perf.html#SchedulerAnalysis|scheduler analysis with perf]] The following projects use Cyclictest results to evaluate latencies: * [[realtime:documentation:howto:tools:rteval|rteval]] * [[realtime:documentation:howto:tools:worstcaselatency|Worst case latency test scenarios]]