Messages in this thread | | | Date | Wed, 06 Aug 2003 19:21:15 +0200 | From | Manfred Spraul <> | Subject | Re: SMP performance problem in 2.4 (was: Athlon spinlock performance) |
| |
Scott wrote:
>The problem is in `try_to_free_pages' and its associated routines, >`shrink_caches' and `shrink_cache', in `mm/vmscan.c'. After I made some >changes to greatly reduce lock contention in the slab allocator and >`shrink_cache', > How did you change the slab locking?
> and then instrumented `shrink_cache' to see what it was >doing, the problem showed up very clearly. > >In one approximately 60-second period with the problematic workload running, >`try_to_free_pages' was called 511 times. It made 2597 calls to >`shrink_caches', which made 2592 calls to `shrink_cache' (i.e. it was very >rare for `kmem_cache_reap' to release enough pages itself). > 2.6 contains a simple fix: I've removed kmem_cache_reap. Instead the code checks for empty pages in the slab caches every other second.
-- Manfred
- 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/
| |