Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Wouldn't a non-copying generational collector with bump allocation be a recipe for fragmentation?


Yes. That is why they have to be copying collectors.


Isn't JSC kind of an exception to this? JSC has a generational non-copying GC. It uses bump-pointer allocation for empty blocks (block=memory with objects of same size) and then switches to allocation via free-list if the block is full.

For implementing the generational GC they simply use sticky mark-bits.


I don't consider what JSC does bump allocation—it's just a highly optimized traditional allocator. Most malloc implementations have bump allocation somewhere.

SpiderMonkey used to use an allocator much like that of JSC before it switched to copying generational GC, to significant performance improvements.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: