|
|
About ::
TODO ::
Blog ::
RSS ::
Old blog ::
Projects ::
GIT ::
Gallery ::
Notes
Sat, 01 Sep 2007
Memory defragmentation.
Christoph Lameter from SGI has posted
a patchset aimed to implement memory defragmentation in his SLUB
memory allocator.
Main idea of the new version is to find pages, which are in the slab, but are
not referenced, to free them and combine into bigger chunks (compound pages).
SLAB/SLUB/SLOB still does not support in-page defragmentation, which was one of the main
issues in my network (tree) allocator,
which combined any objects close to each other, so that allowed bigger allocations,
but not only pages into compound pages (which is can do too). Main feature
of the network allocator was the idea, that objects should never be freed on the
different CPU than where it was allocated. In SLAB this approach
is never used and objects can be freed on different than allocation CPUs which
leads to the fragmentation.
/devel/networking/nta :: Link / Comments (0)
Please solve this captcha to be allowed to post (need to reload in a minute): 98 - 78
|