On Thu, Mar 06, 2008 at 09:11:39PM -0800, Christoph Lameter wrote:This does not solve the problem. Say if you have 2 objects allocated from a given slab and you want to avoid cacheline contention between them, then you have to always ensure they don't overlap on the same cacheline. The fact this happens naturally when you allocate 2 objects from 2 different nodes doesn't really help: the same single CPU can allocate objects that you want to avoid false sharing with. Consider a task struct for example: if you start up a whole lot of worker threads from a single CPU, then you will allocate them all from that one CPU. Then they are spread over all CPUs and you get cacheline contention. Which is why VSMP would legitimately want to use internode alignment on some structures. And internode alignment is total overkill on any other type of system, so you can't go around annotating all your structures with it and hope KMEM_CACHE does the right thing. --
| Arjan van de Ven | [Patch v2] Make PCI extended config space (MMCONFIG) a driver opt-in |
| Linus Torvalds | Linux 2.6.27-rc8 |
| Tilman Schmidt | git guidance |
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
git: | |
| Martin Langhoff | Re: pack operation is thrashing my server |
| Alan Larkin | fatal: Out of memory, malloc failed |
| Mark Junker | git on MacOSX and files with decomposed utf-8 file names |
| Alex Riesen | Re: How do get a specific version of a particular file? |
| Leon Dippenaar | New tcp stack attack |
| Richard Stallman | Real men don't attack straw men |
| Pieter Verberne | Remove escape characters from file |
| Juan Miscaro | removing sendmail |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| David Miller | [GIT]: Networking |
| Chuck Lever | Re: [bug?] tg3: Failed to load firmware "tigon/tg3_tso.bin" |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
