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

The paper i linked outlines a GC that uses bitmap marking, which is i believe the same technique you use in arenas.

The main innovation consists basically of having separate heaps for different objects sizes. It starts with a size of i, and has heaps for sizes i^1, i^2, ..., i^n for bounded n. An object that has a size of m > i^n goes into the i^n+1 heap.

It does thus waste memory at the end of object blocks, but they seem to indicate this is on par with memory wasted by fragmentation (this of course needs to be proofed).

The very big advantage is basically costless deallocation and cheap maintenance of free lists (you just mark the block as unused). It does also trigger several optimizations idea regarding lost space at the end of objects.

I don't know if you'd consider it battle proofed enough though, but i really think it's an interresting idea ! And the benchmarks seem to indicate very good performance.

Anyway, congrats on the 4-colors algorithm, and thank you for this article, it is actually a quite thorough explanation of mark & sweep techniques, i enjoyed reading it !



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

Search: