![]() | ||||||||||
Messages in this thread
|
On Fri, 2002-01-11 at 15:22, Rob Landley wrote: > So the best approach is a combination of the two patches. SMP-on-UP for > everything outside of spinlocks, and then manually yielding locks that cause > problems. Both Robert Love and Andrew Morton have come out in favor of each > other's patches on lkml just in the past few days. The patches work together > quite well, and each wants to see the other's patch applied. Right. Here is what I want for 2.5 as a _general_ step towards a better kernel that will yield better performance: Merge the preemptible kernel patch. A version is now out for 2.5.2-pre11 with support for Ingo's scheduler: ftp://ftp.kernel.org/pub/linux/kernel/people/rml/preempt-kernel Next, make available a tool for profiling kernel latencies. I have one available now, preempt-stats, at the above url. Andrew has some excellent tools available at his website, too. Something like this could even be merged. Daniel Phillips suggested a passive tool on IRC. Preempt-stats works like this. It is off-by-default and, when enabled, measures time between lock and unlock, reporting the top 20 worst-cases. Begin working on the worst-case locks. Solutions like Andrew's low-latency and my lock-break are a start. Better (at least in general) solutions are to analyze the locks. Localize them; make them finer grained. Analyze the algorithms. Find the big problems. Anyone look at the tty layer lately? Ugh. Using the preemptive kernel as a base and the analysis of the locks as a list of culprits, clean this cruft up. This would benefit SMP, too. Perhaps a better locking construct is useful. The immediate result is good; the future is better. Robert Love - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | |||||||||
| Last update: 2005-03-22 11:15 [from the cache] ©2003-2008 | ||||||||||