[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1193334905.4021.35.camel@ghaskins-t60p.haskins.net>
Date: Thu, 25 Oct 2007 13:55:05 -0400
From: Gregory Haskins <ghaskins@...ell.com>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: linux-rt-users@...r.kernel.org, linux-kernel@...r.kernel.org,
Dmitry Adamushko <dmitry.adamushko@...il.com>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Ingo Molnar <mingo@...e.hu>, Darren Hart <dvhltc@...ibm.com>
Subject: Re: [PATCH 3/3] RT: CPU priority management
On Thu, 2007-10-25 at 13:36 -0400, Steven Rostedt wrote:
>
> Yep, -rt2 (and -rt3) are both horrible too. That's why I'm working on a
> sched-domain version now to handle that.
Excellent. I'm not 100% sure I've got the "mingo lingo" ;) down enough
to know if sched_domains are the best fit, but I think in concept that
makes a lot of sense (as we have discussed on IRC). I am thinking that
we want to treat the rt.highest_prio/cpupri stuff to the "cpuset"
mentality, just like Ingo suggested for the rto masks. If sched_domains
are those beasts, then great.
>
> >
> > The fact is, you can't maintain a global dynamic policy without bouncing
> > cachelines, period. But hopefully we can minimize it, and I just want
> > to see the fastest code here.
>
> Well, we need a balance between cacheline hits, and where to pull from.
> As performance goes, the two are inverse perportional. The secret is to
> find a nice middle ground.
Fully agree.
>
> >
> > >
> > > I still don't see the benefit from the cpupri code.
> >
> > I still owe you timing data, but at this juncture I think I can beat
> > linear (especially as we start throwing in big-iron) ;) I originally
> > got involved in this scheduler rework from observations of poor scaling
> > on our 8/16-ways, so I want it to scale as much as you ;) If this alg
> > doesn't pan out, that's cool. But I think it will in the end. Linear
> > algs in the fast path just make my skin crawl. Perhaps it will still be
> > the best design in the end, but I am not giving up that easy until I
> > prove it to myself.
>
> It's only linear in respect to the size of the domain or cpus allowed.
True, but as of now its a singular domain ;) And even so, I still think
a cpupri like algorithm can be potentially useful even if we utilize
finer grained domains. That is, unless the membership becomes
sufficiently small (maybe < 4 CPUs?) where the lower-overhead linear
search will just always trounce the larger overhead of cpupri_set().
> Any
> 8/16 way boxes worried about cacheline bouncing need to reign in on the
> cpus allowed mask. Otherwise, we would simply have bouncing anyway with
> the tasks themselves.
Agreed. Looking forward to reviewing your work here. :)
Regards,
-Greg
Download attachment "signature.asc" of type "application/pgp-signature" (190 bytes)
Powered by blists - more mailing lists