Michael Ost wrote:
Have you ever seen "migration" or
"watchdog" hold the CPU for any length of time?
This shouldn't happen.
I was curious about "migration" since
/proc/sys/kernel/sched_migration_cost = 500000
When migrating threads to another CPU (core), there is no big delay
because real-time threads have well-defined scheduling behaviour and
either interrupt the running thread immediately or go into the runnable
queue like other threads that already are on that CPU.
The reason that the cost is set so high is that the new thread will run
slower because it has to pull over its data from the other cache.
I guess I can rule out SMIs because those should happen even when there
is one thread per core.
How big are the latencies you're seeing? They are not from being
interrupted by another RR thread at the same priority (see "man
sched_rr_get_interval")?
Regards,
Clemens