Linus, I agree that this solution is perhaps not the cleanest,
one thing to check, is how much slower this kernel would be
compared to a standard kernel.
I think "reschedules" during lenghty kernel operations is not a so bad
idea, the important thing is not to reschedule too often, to avoid wasting
too much CPU time in the scheduler.
I'm easily willing to trade 1-5% of the CPU in exchange of a responsive <5ms
latency system.
If the performance drop worries you, we could add this as a compile time
option, "kernel optimized for server", or "kernel optimized for multimedia" .
If's ridiculous to get up to 150ms latencies on a powerful machine like the
PII400 on Linux.
Even a Windows user (with a properly tuned machine) laughs at these values.
Simple reschedules in uaccess.h + buffer.c lowered the latency *DRAMATICALLY*
on my box, about an order of magnitude. ( /proc down to 3ms , disk read down
to 6ms)
Linus, what are your proposal for making the kernel "low-latency" in a CLEAN
way ?
I think making the kernel fully preemptable is not an easy task and will
not happen very soon.
Plus what disturbs me is the busy-waiting for RT processes for sleeps <2ms
2ms is PLENTY of time on modern CPUs,and I call THIS wasitng CPU time,
therefore we should change this approach.
comments ?
P.S: the profiling patch and infos are from Roger Larrson
(nra02596@norran.net).
The profiling-patch is on my page if you want.
Benno.
-- Benno Senoner E-Mail: sbenno@gardena.net Linux scheduling latency benchmarks http://www.gardena.net/benno/linux/audio
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/