Balanced GC: A Copying Garbage Collector for Golang

February 26, 2024 31 min Free

Description

In this talk, Yifei Zhang introduces Balanced GC, a copying garbage collector for Golang. It allows bump allocation for small pointerless objects in per-goroutine allocation buffers and uses a copying GC to manage that memory. Balanced GC can significantly accelerate object allocation and improve the performance of large-scale online microservices, demonstrating an average of 4% performance improvement, with up to 10% in some cases.