|
|
|
|
|
by hyustan
2281 days ago
|
|
Surprised not see any talk about slab allocations. Typical malloc implementations today use slabs: A variety of allocation-classes is defined; for example, 1B, 2B, 4B, 8B, ... Each allocation-class is essentially its own independent heap. Slabs are really good: Allocation is fast: a few cycles to determine the slab, then pick the first available cell, done. Compaction is easy: all cells have the same size! And I repeat, all cells within an allocation-class have the same size! This means things like pin cards, etc... Compared to the pointer-chasing inherent to a splay-tree... I do wonder. |
|