Re: [PATCH tip/core/rcu 11/17] rcu: Bind grace-period kthreads to non-NO_HZ_FULL CPUs
From: Frederic Weisbecker
Date: Fri Jul 11 2014 - 16:45:23 EST
On Fri, Jul 11, 2014 at 01:35:13PM -0700, Paul E. McKenney wrote:
> On Fri, Jul 11, 2014 at 09:11:15PM +0200, Frederic Weisbecker wrote:
> > On Fri, Jul 11, 2014 at 02:05:08PM -0500, Christoph Lameter wrote:
> > > On Fri, 11 Jul 2014, Frederic Weisbecker wrote:
> > >
> > > > > That would imply that all no-nohz processors are housekeeping? So all
> > > > > processors with a tick are housekeeping?
> > > >
> > > > Well, now that I think about it again, I would really like to keep housekeeping
> > > > to CPU 0 when nohz_full= is passed.
> > >
> > > Yeah.
> > >
> > > > > Could we make that set configurable? Ideally I'd like to have the ability
> > > > > restrict the housekeeping to one processor.
> > > >
> > > > Ah, I'm curious about your usecase. But I think we can do that. And we should.
> > >
> > > The use case is pretty straightforward because we are trying to keep as
> > > much OS noise as possible off most processors. Processor 0 is the
> > > sacrificial lamb that will be used for all OS processing and hopefully all
> > > high latency operations will occur there. Processors 1-X have a tick but
> > > we still try to keep latencies sane. And then there is X-Y where tick is
> > > off.
> > Ok. I don't entirely get why you need 1-X but I can easily imagine some non-latency-critical
> > stuff running there.
> > Paul proposed "housekeeping=". If we ever go there, I'd rather vote for "sacrifical_lamb="
> Given Christoph's desire for only one housekeeping CPU, I guess the
> counting version makes the most sense, so that "housekeeping=N" designates
> the first N non-nohz CPUs in numerical order as housekeeping CPUs.
> If there are fewer than N non-nohz CPUs, you get a splat at boot time
> and your request is capped at the number of non-nohz CPUs.
> Seem reasonable?
I wonder if it's wouldn't be rather reasonable to affine housekeeping to all non-nohz-full CPUs
by default and then people who want finergrained housekeeping can affine manually kthreads from userspace.
That implies to bind without PF_NO_SETAFFINIT but that's easy enough to do.
> Thanx, Paul
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/