We show that for 8 real and varied C and C++ programs, several conventional
dynamic storage allocators provide near-zero fragmentation, once we accoun
t for overheads due to implementation details such as headers, alignment, e
tc. This substantially strengthens our previous results showing that the me
mory fragmentation problem has generally been misunderstood, and that good
allocator policies can provide good memory usage for most programs. The new
results indicate that for most programs, excellent allocator policies are
readily available, and efficiency of implementation is the major challenge.
While we believe that our experimental results are state-of-the-art and ou
r methodology is superior to most previous work, more work should be done t
o identify and study unusual problematic program behaviors not represented
in our sample.