This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
realtime:documentation:howto:tools:cyclictest:test-design [2018/08/21 12:47] ebugden [Option Selection] Update link |
realtime:documentation:howto:tools:cyclictest:test-design [2018/08/23 13:45] ebugden [Option Selection] Move all timer content to specific page |
||
---|---|---|---|
Line 23: | Line 23: | ||
Here is a list of options that should always be considered when measuring latencies with Cyclictest: | Here is a list of options that should always be considered when measuring latencies with Cyclictest: | ||
- | * [[realtime:documentation:howto:debugging:cyclictest:test-design:threads|Number and affinity of measuring threads]] (--threads, --affinity) | + | * [[realtime:documentation:howto:tools:cyclictest:options:threads|Number and affinity of measuring threads]] (--threads, --affinity) |
* [[realtime:documentation:howto:tools:cyclictest:options:interval|Thread wake-up interval]] (--interval, --distance) | * [[realtime:documentation:howto:tools:cyclictest:options:interval|Thread wake-up interval]] (--interval, --distance) | ||
* [[realtime:documentation:howto:tools:cyclictest:options:priority|Thread real-time priority]] (--priority) | * [[realtime:documentation:howto:tools:cyclictest:options:priority|Thread real-time priority]] (--priority) | ||
* [[realtime:documentation:howto:tools:cyclictest:options:duration|Test duration]] | * [[realtime:documentation:howto:tools:cyclictest:options:duration|Test duration]] | ||
- | * Prevent Cyclictest pages from being paged out of memory (--mlockall) | + | * [[realtime:documentation:howto:tools:cyclictest:options:mlockall|Prevent Cyclictest pages from being paged out of memory]] (--mlockall) |
- | * Use clock_nanosleep for high-resolution thread sleeping with a faster expiry path than POSIX interval timers (--nanosleep) | + | * [[realtime:documentation:howto:tools:cyclictest:options:nanosleep|Use clock_nanosleep( )]] (--nanosleep) |
- | + | ||
- | Using the --mlockall option, which prevents Cyclictest pages from being paged out, reduces the Cyclictest overhead by avoiding having to reload pages from the disk. | + | |
- | + | ||
- | The POSIX interval timers are signal based and their expiry path is slow because it goes through the hrtimer softirq. On the other hand nanosleep has a much less expensive expiry path because it is just a wakeup. | + | |
When running Cyclictest on a symmetic multi-processing (SMP) system, specifying the --smp option can be useful as it takes care of some of the options mentioned above without having to specify them all individually. | When running Cyclictest on a symmetic multi-processing (SMP) system, specifying the --smp option can be useful as it takes care of some of the options mentioned above without having to specify them all individually. |