On Sun, Mar 31 2013, Tejun Heo wrote:
> Hello, Viresh.
> 
> On Sun, Mar 31, 2013 at 08:01:46PM +0530, Viresh Kumar wrote:
> > Block layer uses workqueues for multiple purposes. There is no real 
> > dependency
> > of scheduling these on the cpu which scheduled them.
> > 
> > On a idle system, it is observed that and idle cpu wakes up many times just 
> > to
> > service this work. It would be better if we can schedule it on a cpu which 
> > the
> > scheduler believes to be the most appropriate one.
> > 
> > This patch replaces normal workqueues with UNBOUND versions.
> 
> Hmm.... so, we really don't want to unconditionally convert workqueues
> to unbound.  Especially not kblockd.  On configurations with multiple
> high iops devices with IRQ routing, having request completion runinng
> on the same CPU has significant performance advantages.  We can't
> simply switch it to an unbound wokrqueue because it saves power on
> small arm configuration.

I had the same complaint, when it was posted originally...

> Plus, I'd much prefer to be clearly marking the workqueues which would
> contribute to powersaving when converted to unbound at least until we
> can come up with a no-compromise solution which doesn't need to trade
> off between cache locality and powersaving.
> 
> So, let's please introduce a new flag to mark these workqueues, say,
> WQ_UNBOUND_FOR_POWER_SAVE or whatever (please come up with a better
> name) and provide a compile time switch with boot time override.

And lets please have it off by default. The specialized configs / setups
can turn it on, but we should default to better performance.

-- 
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to