Hi,

On 2022-07-05 16:33:29 +0900, Masahiko Sawada wrote:
> > One thing I was wondering about is trying to choose node types in
> > roughly-power-of-two struct sizes. It's pretty easy to end up with 
> > significant
> > fragmentation in the slabs right now when inserting as you go, because some 
> > of
> > the smaller node types will be freed but not enough to actually free blocks 
> > of
> > memory. If we instead have ~power-of-two sizes we could just use a single 
> > slab
> > of the max size, and carve out the smaller node types out of that largest
> > allocation.
> 
> You meant to manage memory allocation (and free) for smaller node
> types by ourselves?

For all of them basically. Using a single slab allocator and then subdividing
the "common block size" into however many chunks that fit into a single node
type.

> How about using different block size for different node types?

Not following...


Greetings,

Andres Freund


Reply via email to