On Maw, 2005-12-13 at 06:13 -0700, Matthew Wilcox wrote: > > Some platforms already do this for certain sets of operations like > > atomic_t. The downside however is that you no longer control the lock > > contention or cache line bouncing. It becomes a question of luck rather > > than science as to how well it scales. > > s/luck/statistics/
Unfortunately not always. Statistical probability models generally assume that samples are independent, as does just growing the hash table. If there are correlations then how those correlations and the hash function interact isn't simple statistics so growing the hash might not work as well as would be hoped. A second problem with the hash is it makes priority inversions entertaining and unpredictable when using Ingo's -rt work. That isn't a big problem with the atomic_t stuff in the parisc tree because atomic_t is effectively the top of the lock ordering for the system. Growing the hash while it may improve the behaviour isn't going to work as well as embedding the lock in the object. Alan
