Re: [PATCH]tickless: Fix tick nohz timer irq0 fail to increaase

From: Youquan,Song
Date: Mon Jan 04 2010 - 09:06:14 EST


> > Tickless is disabled by nohz=off, which is used in OSVs.
>
> it is? I doubt anyone wants to normally disable tickless, the power
> cost is just too high....
tickless is normally used but it is possible to use for some special users,
tickless is disabled by nohz=off kernel option, which is address in OSV's
release notes.

> > But in
> > current kernel, if tickless is disabled, the timer irq0 will not
> > increase.
>
> why is this a problem?

Two reasons:
R1:
In my mind, tick is period timer with frequent of HZ. but timer irq0 is
actually be an oneshot mode timer.
But in real watch, it is keep not increase for long time. but it
suddenly increase 5000~10000 times in a seconds.

R2:
Tickless disable, change cpuidle driver to ladder governor(menu does not
work at all).

Run powertop, if apply my patch, the c-state residency has > 10% improvement
than current kernel.

>
> > Because the timer event handler should be
> > tick_handle_periodic, but actually event handler keep as
> > tick_handle_oneshot_broadcast which is used in tickless. The root
> > cause is that it is default to enable high resolution timer which
> > will force to oneshot broadcast mode.
>
> using local apic in one shot mode is not a problem, I'd in fact call it
> a feature...

But in current kernel, local apic timer is in periodic mode with
frequencey of HZ when tickless is disabled.

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