Re: [RFC PATCH 3/3] sched: introduce synchronized idle injection

Jacob Pan
2015-11-05T19:33:37Z

On Thu, 5 Nov 2015 11:27:32 -0800
Jacob Pan <jacob.jun.pan@linux.intel.com> wrote:

> On Thu, 5 Nov 2015 11:09:22 +0100
> Peter Zijlstra <peterz@infradead.org> wrote:
>
> > > Before:
> > > CPU0 ______||| || |___________| || || |_____
> > > CPU1 _________||| || |_______| || |_______
> > >
> > > After:
> > >
> > > CPU0 ______||| || |___________| || || |_____
> > > CPU1 ______||| || |___________| || |_______
> > >
> > > The goal is to have overlapping idle time if the load is already
> > > balanced. The energy saving can be significant.
> >
> > I can see such a scheme having a fairly big impact on latency, esp.
> > with forced idleness such as this. That's not going to be popular
> > for many workloads.
> agreed, it would be for limited workload. the key is to identify such
> workloads at runtime. I am thinking to use the load average of
> the busiest CPU as reference for consolidation, will not go beyond
> that.
> For the patch I have today and if you play a game like this one
> http://www.agame.com/game/cut-the-rope
sorry, hit the wrong button before finishing the email.
and set duration to 5, and 20% idle, it does not affect user experience
much. It saves ~15% power on my BDW ultrabook. Other unbalanced
workload such as video playback don't benefit, should be avoided.