Sunday, 12 February 2012

The Very Concurrent Garbage Collector

The F#.NET Journal just published an article about performance:

"One of the most interesting research papers on garbage collection describes an unusual algorithm called the "Very Concurrent Garbage Collector" (VCGC) that manages to recycle unreachable heap blocks with only the occasional global synchronization with mutator threads in order to snapshot the global roots. This article walks through the design and implementation of VCGC in F#. Given that the subject of concurrent garbage collectors is notoriously difficult, this demonstrates how prototype solutions written in high-level languages like F# can help with correctness. Furthermore, the implementation adopts an allocationless programming style in order to leverage the benefits of this GC algorithm and we find that maximum pause times are over 100x shorter than with the default .NET 4 workstation GC and wall-clock performance is only slightly worse..."

To read this article and more, subscribe to The F#.NET Journal today!

No comments: