[$] Slabs, sheaves, and barns
The kernel's slab allocator is responsible for the allocation of small(usually sub-page) chunks of memory. For many workloads, the speed ofobject allocation and freeing is one of the key factors in overallperformance, so it is not surprising that a lot of effort has gone intooptimizing the slab allocator over time. Now that the kernel is down to a single slab allocator, thememory-management developers have free rein to add complexity to it; thelatest move in that direction is the per-CPUsheaves patch set from slab maintainer Vlastimil Babka.