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-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html