Re: [PATCH RESEND] nohz: Affining unpinned timers

From: Thomas Gleixner
Date: Tue Jul 07 2015 - 02:39:41 EST


On Tue, 7 Jul 2015, Frederic Weisbecker wrote:
> On Mon, Jul 06, 2015 at 07:18:22PM +0200, Thomas Gleixner wrote:
> > On Mon, 6 Jul 2015, Frederic Weisbecker wrote:
> > > I hope everybody received the patch because there is a ";" after each address :-)
> > >
> > > On Tue, Jun 23, 2015 at 02:01:33PM +0530, Vatika Harlalka wrote:
> > > > The problem addressed in this patch is about affining unpinned timers.
> > > > Adaptive or Full Dynticks CPUs should not be disturbed by unnecessary
> > > > jitter due to firing of such timers on them.
> > > > This patch will affine timers to online CPUs which are not Full Dynticks
> > > > in FULL_NOHZ configured systems. It will not bring about functional
> > > > changes if NOHZ_FULL is not configured, because is_housekeeping_cpu()
> > > > always returns true in CONFIG_NO_HZ_FULL=n.
> > > >
> > > > Signed-off by: Vatika Harlalka <vatikaharlalka@xxxxxxxxx>
> > >
> > > The patch looks good to me. Peter, Thomas, are you ok with it too?
> >
> > By some definition of OK. The overhead of this is growing and growing.
> >
> > We really need to make this a pull not a push model.
>
> I'm currently working toward that.
> See "[PATCH 0/8] tick/nohz: Tick dependency quick check + cleanups" as a
> first step.
>
> Now for this very patch, I don't know how we could make it better. Any
> suggestion?

Not for the time being. When I'm done with the timer wheel overhaul we
should look into queueing stuff in different wheels and let the non
idle cpus pull from there instead of pushing stuff at enqueue
time. The latter is really silly because most of these timers are
removed before they expire. Needs some thoughts, but anything which
avoids the whole target cpu crap at enqueue time is better than what
we have now.

Thanks,

tglx
--
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/