Messages in this thread | | | From | Andi Kleen <> | Subject | Re: [Patch 3/3] prepopulate/cache cleared pages | Date | Fri, 24 Feb 2006 13:27:26 +0100 |
| |
On Friday 24 February 2006 10:26, Nick Piggin wrote:
> [aside] > Actually I have a scalability improvement for rwsems, that moves the > actual task wakeups out from underneath the rwsem spinlock in the up() > paths. This was useful exactly on a mixed read+write workload on mmap_sem. > > The difference was quite large for the "generic rwsem" algorithm because > it uses the spinlock in fastpaths a lot more than the xadd algorithm. I > think x86-64 uses the former, which is what I presume you're testing with?
I used the generic algorithm because Andrea originally expressed some doubts on the correctness of the xadd algorithms and after trying to understand them myself I wasn't sure myself. Generic was the safer choice.
But if someone can show convincing numbers that XADD rwsems are faster for some workload we can switch. I guess they are tested well enough now on i386.
Or would your scalability improvement remove that difference (if it really exists)?
-Andi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |