I am still just as skeptical as JoeAltmaier was. The fast-path for modern memory allocators are also just pointer-bumps in slabs. And if you keep mallocing and freeing something of the same size on the same thread, you are very likely to keep getting the same memory location on each allocation, which has excellent cache behavior.<p>For an excellent paper on state-of-the-art memory allocation techniques (which also has a good overview of prior techniques, and how their works builds on that), see &quot;Fast, Multicore-Scalable, Low-Fragmentation Memory Allocation through Large Virtual Memory and Global Data Structures&quot; from OOSPLA 2015: <a href="http:&#x2F;&#x2F;2015.splashcon.org&#x2F;event&#x2F;oopsla2015-fast-multicore-scalable-low-fragmentation-memory-allocation-through-large-virtual-memory-and-global-data-structures" rel="nofollow">http:&#x2F;&#x2F;2015.splashcon.org&#x2F;event&#x2F;oopsla2015-fast-multicore-sc...</a><p>If you&#x27;re aware of published works which show garbage collection consistently outperforming manual memory management for the reasons you explained, I&#x27;m very interested in reading them.