Re: [RFC PATCHSET] workqueue: implement concurrency managed workqueue

From: Tejun Heo
Date: Thu Oct 01 2009 - 12:45:01 EST


Hello,

Ingo Molnar wrote:
> Ok, this looks fairly interesting - and the way you reused scheduler
> classes to auto-regulate with no impact on regular performance is quite
> an ingenious idea as well. (KVM's preempt notifiers should probably use
> this trick too, instead of an ugly notifier in the scheduler hotpath)
>
> This mechanism could be used to implement threadlets/syslets too btw.,
> and other forms of asynchronous IO.
>
> My main worry is that in practice workqueues arent all that performance
> critical - so we are shooting to optimize something that doesnt
> necessarily use all the potential goodness inherent in this approach.

The scheduler code was pretty nice to hook into. But as Jens said,
this patchset is more about getting the async framework which can
scale and be used universally. Performance-wise, I was mainly aiming
for not introducing noticeable slow down as I expect workqueues to be
used more widely with this change. Workqueue is already pretty
heavily used in certain paths - ie. block IO completion path with SSDs
and any signficant overhead would be noticeable. With mixture of
different works of different run time, I think the net effect would be
positive. It should be able to achieve better latency and throughput.
I don't have any numbers to back my rather optimistic projection yet
tho.

Thanks.

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