[QUESTION] is SLAB considered legacy and deprecated?
From: Hyeonggon Yoo
Date: Mon Sep 27 2021 - 05:03:56 EST
I've been working on adding 'lockless cache' on sl[au]b for a while.
But what it actually does is actually adding 'queuing' on slub.
So there is a fundamental question coming into my mind:
'is SLAB considered legacy and deprecated?'
It seems there are little development on SLAB and people think that
SLAB is legacy and deprecated, so CONFIG_SLUB is used by default.
But I think both has pros and cons for their own:
SLAB: more temporal locality (cache friendly)
but high usage of memory, and less spatial locality (TLB misses) than SLUB.
SLUB: less temporal locality (less cache friendly) than SLAB
but more spatial locality (TLB hit), and low usage of memory
and good debugging feature.
Why do people say SLAB is deprecated/legacy?