[dm-devel] slab: introduce the flag SLAB_MINIMIZE_WASTE
Vlastimil Babka
vbabka at suse.cz
Mon Apr 16 19:38:21 UTC 2018
On 04/16/2018 04:37 PM, Mikulas Patocka wrote:
>>> Can you or Mikulas briefly summarize how the dependency is avoided, and
>>> whether if (something like) SLAB_MINIMIZE_WASTE were implemented, the
>>> dm-bufio code would happily switch to it, or not?
>>
>> git log eeb67a0ba04df^..45354f1eb67224669a1 -- drivers/md/dm-bufio.c
>>
>> But the most signficant commit relative to SLAB_MINIMIZE_WASTE is:
>> 359dbf19ab524652a2208a2a2cddccec2eede2ad ("dm bufio: use slab cache for
>> dm_buffer structure allocations")
>>
>> So no, I don't see why dm-bufio would need to switch to
>> SLAB_MINIMIZE_WASTE if it were introduced in the future.
>
> Currently, the slab cache rounds up the size of the slab to the next power
> of two (if the size is large). And that wastes memory if that memory were
> to be used for deduplication tables.
>
> Generally, the performance of the deduplication solution depends on how
> much data can you put to memory. If you round 640KB buffer to 1MB (this is
> what the slab and slub subsystem currently do), you waste a lot of memory.
> Deduplication indices with 640KB blocks are already used in the wild, so
> it can't be easily changed.
Thank you both for the clarification.
Vlastimil
>
>> Mike
>
> Mikulas
>
More information about the dm-devel
mailing list