Re: [PATCHSET] workqueue: reimplement CPU hotplug to keep idle workers

From: Shilimkar, Santosh
Date: Sat Jul 21 2012 - 02:43:11 EST


Rafael,

On Sat, Jul 21, 2012 at 1:14 AM, Rafael J. Wysocki <rjw@xxxxxxx> wrote:
> On Friday, July 20, 2012, Tejun Heo wrote:
>> Hello,
>>
>> On Fri, Jul 20, 2012 at 08:22:30PM +0200, Peter Zijlstra wrote:
>> > I really think people who use hotplug at high frequencies are on drugs
>> > and doing it wrong.
>>
>> I don't know. It does make some sense. It's not like we have any
>> other mechanism to keep some processors completely quiesient, which
>> could make a noticeable difference from powersaving POV compared to
>> mostly idle. Rafael, can you please chime in and explain how / where
>> / how freqeuntly / etc CPU hotplug is used for powersaving?
>
> Well, there are use cases I'm not really familiar with.
>
> Pretty much the only use case I'm sufficiently familiar with is
> suspend/hibernate where we unplug all of the nonboot CPUs at one point.
>
> The other use cases, which I don't really think are entirely valid,
> are on some ARM platforms where CPUs are unplugged instead of being put into
> C-states or equivalent (because we don't have a good mechanism for handling
> multiprocessor C-states; there's a set of patches for that waiting for
> the merge window in the Len's tree). I'm hoping to get rid of those
> use cases in future entirely.
>
Not sure if you are talking about couple idle series waiting in Len's tree for
the merge.

That series actually trying add infrastructure for the hardwares
where CPU's need co-ordination which is needed on few ARM hardwares
to get into deeper CPU cluster C-states. It is indeed true that without
that approach, cpu-hotplug was used to overcome the ordering issue
I guess Exynos, Tegra and OMAP are the few ARM architectures I
know who has been using the couple cpuidle infrastructure.

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