Re: [RFC PATCHSET] workqueue: implement concurrency managed workqueue
[Posted October 7, 2009 by corbet]
| From: |
| David Howells <dhowells-AT-redhat.com> |
| To: |
| Tejun Heo <tj-AT-kernel.org> |
| Subject: |
| Re: [RFC PATCHSET] workqueue: implement concurrency managed workqueue |
| Date: |
| Thu, 01 Oct 2009 13:53:49 +0100 |
| Cc: |
| jeff-AT-garzik.org, mingo-AT-elte.hu, linux-kernel-AT-vger.kernel.org,
akpm-AT-linux-foundation.org, jens.axboe-AT-oracle.com,
rusty-AT-rustcorp.com.au, cl-AT-linux-foundation.org,
dhowells-AT-redhat.com, arjan-AT-linux.intel.com |
| Archive-link: |
| Article, Thread
|
Sounds interesting as a replacement for slow-work. Some thoughts for you:
The most important features of slow-work are:
(1) Work items are not re-entered whilst they are executing.
(2) The slow-work facility keeps references on its work items by asking the
client to get and put on the client's refcount.
(3) The slow-work facility can create a lot more threads than the number of
CPUs on a system, and the system doesn't grind to a halt if they're all
taken up with long term I/O (performing several mkdirs for example).
I think you have (1) and (3) covered, but I'm unsure about (2).
Also, does it actually make sense to bind threads that are performing
long-term I/O to particular CPUs? Threads that are going to spend a lot more
time sleeping on disk I/O than actually running on a CPU?
David
(
Log in to post comments)