Messages in this thread | | | Date | Mon, 14 Apr 2008 18:54:43 +0200 | From | Jens Axboe <> | Subject | Re: [PATCH] Replace completions with semaphores |
| |
On Sun, Apr 13 2008, Matthew Wilcox wrote: > On Sun, Apr 13, 2008 at 09:05:13AM +0200, Ingo Molnar wrote: > > there's also another aspect: completions are faster a bit > > in theory, because they know that they will schedule most of the time - > > while semaphores assume that they will _not_ schedule. (And that's > > exactly because the intent of the developer when using a completion is > > crystal clear.) > > In practice though, the current implementation is slower. Of course, > that's fixable, and I strongly suspect that the current users of > completions simply don't care about speed -- the normal use of > completions is in startup and shutdown paths where a millisecond extra > isn't going to be noticable.
I'd be surprised if it was in that range, milisecond range would definetely mean that something was completely bused in that area :-). IOW, I'd be surprised if you can measure much of a difference, even in microbencmarks.
And performance does matter somewhat, it's not ONLY used in startup/shutdown scenarios. The block layer uses it for sync requests, for instance.
-- Jens Axboe
| |