Re: [patch] Cache align futex hash buckets

From: Nick Piggin
Date: Tue Feb 21 2006 - 20:48:36 EST


Christoph Lameter wrote:
On Tue, 21 Feb 2006, Nick Piggin wrote:


Ravikiran G Thirumalai wrote:

Following change places each element of the futex_queues hashtable on a
different cacheline. Spinlocks of adjacent hash buckets lie on the same
cacheline otherwise.


It does not make sense to add swaths of unused memory into a hashtable for
this purpose, does it?


It does if you essentially have a 4k cacheline (because you are doing NUMA in software with multiple PCs....) and transferring control of that cacheline is comparatively expensive.


Instead of 1MB hash with 256 entries in it covering 256 cachelines, you
have a 1MB hash with 65536(ish) entries covering 256 cachelines.

-
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/