| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| wiki:system_configuration [2026/01/27 10:01] – [latencytop] autostatic | wiki:system_configuration [2026/01/29 20:45] (current) – [cyclictest] autostatic |
|---|
| ==== LatencyTOP ==== | ==== LatencyTOP ==== |
| |
| LatencyTOP is a very useful tool to find out what processes are causing system latency to happen. LatencyTOP only works on kernels that have ''CONFIG_LATENCYTOP'' enabled. This would mean building your own kernel as practically all packaged kernels do not have this feature enabled by default. | [[https://www.latencytop.org/|LatencyTOP]] is a very useful tool to find out what processes are causing system latency to happen. LatencyTOP only works on kernels that have ''CONFIG_LATENCYTOP'' enabled. This would mean building your own kernel as practically all packaged kernels do not have this feature enabled by default. |
| |
| {{:wiki:latencytop.png|latencytop}} | {{:wiki:latencytop.png|latencytop}} |
| |
| Just as ''latencytop'' measures system latencies, ''[[https://wiki.linuxfoundation.org/realtime/documentation/howto/tools/cyclictest/start|cyclictest]]'' measures kernel latencies. ''cyclictest'' has quite some options but one of the most used ways to run the command is: | Just as ''latencytop'' measures system latencies, ''[[https://wiki.linuxfoundation.org/realtime/documentation/howto/tools/cyclictest/start|cyclictest]]'' measures kernel latencies. ''cyclictest'' has quite some options but one of the most used ways to run the command is: |
| # cyclictest -t1 -p 80 -n -i 10000 -l 10000 -m | # cyclictest -t1 -p 80 -i 10000 -l 10000 -m |
| One single thread (''-t1''), priority of 80 (''-p 80''), use clock_nanosleep (''-n''), use 10000 us base interval of thread (''-i 1000''), use 1000 loops and then exit (''-l 10000''), lock current and future memory allocations (''-m''). More on clock_nanosleep can be found in its manpage (''man clock_nanosleep''). | One single thread (''-t1''), priority of 80 (''-p 80''), use 10000 µs base interval of thread (''-i 10000''), use 10000 loops and then exit (''-l 10000''), lock current and future memory allocations (''-m''). ''cyclictest'' uses clock_nanosleep by default. More on clock_nanosleep can be found in its manpage (''man clock_nanosleep''). |
| |
| Other examples of the usage of ''cyclictest'': | Other examples of the usage of ''cyclictest'': |