Threaded interrupts and preemption
chase.douglas at canonical.com
Mon Apr 12 23:24:37 UTC 2010
Here at ELC there's a big push behind RT and the underlying tech like
threaded ISRs and varying levels of preemption. In a talk about
threaded ISRs, the presenter had a graph of some latency measurement
(I can't remember what exactly). The graph was rather stunning. It
showed RHEL 5 as having really high latency average and very large
distribution. It then had a fully preemptible kernel, and that showed
great average latency, but a reasonable distribution of latency.
Finally was threaded ISRs from the RT patch set, which averaged very
slightly above the full preemption, but EXTREMELY predictable latency.
I noticed that our Lucid kernel only has voluntary preemption. Have we
looked into full preemption? Perhaps we can get better desktop
responsiveness just by going that far. In particular I am interested
in trying out the RT patchset with threaded ISRs to see what effect
that has as well, though we wouldn't ship it as a supported kernel
configuration. Perhaps we would find that our responsiveness issues
with high I/O are due to ISR latencies?
In the RT patch all ISRs are threaded by default unless they
specifically set it up otherwise. I think it would be fun to have an
RT completely preemptible kernel just so we can try it out and have a
comparison. We would gain an insight as to whether a responsiveness
issue is scheduler algorithm based or latency based.
More information about the kernel-team