Messages in this thread | | | Subject | Re: [GIT PULL] adaptive spinning mutexes | From | Chris Mason <> | Date | Thu, 15 Jan 2009 14:26:58 -0500 |
| |
On Thu, 2009-01-15 at 10:16 -0800, Linus Torvalds wrote: > > On Thu, 15 Jan 2009, Ingo Molnar wrote: > > > > btw., i think spin-mutexes have a design advantage here: in a lot of code > > areas it's quite difficult to use spinlocks - cannot allocate memory, > > cannot call any code that can sporadically block (but does not _normally_ > > block), etc. > > > > With mutexes those atomicity constraints go away - and the performance > > profile should now be quite close to that of spinlocks as well. > > Umm. Except if you wrote the code nicely and used spinlocks, you wouldn't > hold the lock over all those unnecessary and complex operations. >
While this is true, there are examples of places we should expect speedups for this today.
Concurrent file creation/deletion in a single dir will often find things hot in cache and not have to block anywhere (mail spools).
Concurrent O_DIRECT aio writes to the same file, where i_mutex is dropped early on.
pipes should see a huge improvement.
I'll kick off some runs of my three benchmarks on ext3 for comparison. If there are things less synthetic people would like to see, please let me know.
-chris
| |