On Sat, Aug 04, 2007 at 08:50:37AM +0200, Ingo Molnar wrote: > > * Nick Piggin <[EMAIL PROTECTED]> wrote: > > > Oh good. Thanks for getting to the bottom of it. We have normally > > disliked too much runtime tunables in the scheduler, so I assume these > > are mostly going away or under a CONFIG option for 2.6.23? Or...? > > yeah, they are all already under CONFIG_SCHED_DEBUG. (it's just that the > add-on optimization is not upstream yet - the tunings are still being
Ah, OK. So long as that goes upstream I'm happy... and it is good to see that with that patch, the base context switching performance _has_ actually gone up like I had hoped. Nice. > tested) Btw., with SCHED_DEBUG we now also have your domain-tree sysctl > patch upstream, which has been in -mm for a near eternity. > > > What CPU did you get these numbers on? Do the indirect calls hurt much > > on those without an indirect predictor? (I'll try running some tests). > > it was on an older Athlon64 X2. I never saw indirect calls really > hurting on modern x86 CPUs - dont both CPU makers optimize them pretty > efficiently? (as long as the target function is always the same - which > it is here.) I think a lot of CPUs do. I think ia64 does not. It predicts based on the contents of a branch target register which has to be loaded I presume before instructoin fetch reaches the branch. I don't know if this would hurt or not. > > I must say that I don't really like the indirect calls a great deal, > > and they could be eliminated just with a couple of branches and direct > > calls. > > yeah - i'll try that too. We can make the indirect call the uncommon > case and a NULL pointer be the common case, combined with a 'default', > direct function call. But i doubt it makes a big (or even measurable) > difference. You might be right there. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/