Allocator Slab Performance Comparison

I am looking at updating our malloc () in the kernel of the operating system. We are currently using dlmalloc, but I would like us to be able to edit the home solution without working with the thousandth file.

I decided to look at the slab dispenser (Bonwick94), and I think this is the right choice. Until now, I understand the concept and am ready to implement it. However, I would like to get a picture of the performance comparison before I get started.

Assuming the layers below malloc (vmem, pmem, etc.) have a negative effect, how does the slab distributor distribute, for example, dlmalloc and other common malloc implementations (buddy, best option /, hybrids)?

+3
source share
1 answer

I believe that the slab distributor was at least part of the inspiration for dlmalloc, and the basic plan is considered the best overall combination of compromises for a general purpose distribution system. Generating "one-time-all-all" dispensers that are not intended for pun intended, at the level of abstraction of "best match", "next match", etc., As a rule, they will not reduce it; one algorithm is too limited. Thus, a combination, say optimal, used in conjunction with a slab dispenser will perform much more satisfactorily.

" " , , , - , "" ( ), "" . " " .

; 2 3 ( ) ; , , 1000 .

+3

Source: https://habr.com/ru/post/1713119/


All Articles