Messages in this thread | | | Subject | Re: [PATCH 1/3] slub: set a criteria for slub node partial adding | From | Shaohua Li <> | Date | Wed, 14 Dec 2011 10:43:42 +0800 |
| |
On Wed, 2011-12-14 at 09:29 +0800, David Rientjes wrote: > On Mon, 12 Dec 2011, Shaohua Li wrote: > > > With the per-cpu partial list, I didn't see any workload which is still > > suffering from the list lock, so I suppose both the trashing approach > > and pick 25% used slab approach don't help. > > This doesn't necessarily have anything to do with contention on list_lock, > it has to do with the fact that ~99% of allocations come from the slowpath > since the cpu slab only has one free object when it is activated, that's > what the statistics indicated for kmalloc-256 and kmalloc-2k. That's what > I called "slab thrashing": the continual deactivation of the cpu slab and > picking from the partial list that would only have one or two free objects > causing the vast majority of allocations to require the slowpath. if vast majority of allocation needs picking from partial list of node, the list_lock will have contention too. But I'd say avoiding the slab thrashing does increase fastpath. How much it can improve performance I don't know. The slowpath (not involving list_lock case, so picking per-cpu partial list) is already _very_ fast these days.
| |