Re: [QUESTION] is SLAB considered legacy and deprecated?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/27/21 11:03, Hyeonggon Yoo wrote:
> Hello there,
> 
> 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.

Yeah, I pointed out those threads from 2011 that called it exactly that...
was there any conclusion why that was not ultimately merged?

> So there is a fundamental question coming into my mind:
> 	'is SLAB considered legacy and deprecated?'

To some extend, but not yet in a sense where we would have a deadline to get
rid of it. In some contexts it's still being preferred, AFAIK. But it's okay
if new optional features require just SLUB - for example PREEMPT_RT.

> 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.

I'm not so sure about the usage of memory, SLUB can easily use more I
believe. Instead of caching some arrays of objects it will have one or more
private slabs per cpu, and the slabs are larger-order pages.

> Why do people say SLAB is deprecated/legacy?

Do they?

> Thanks,
> Hyeonggon
> 





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux