On 09/18/2015 09:26 PM, Rory wrote: > The new GC in Go 1.5 seems interesting. What they say about is certainly > interesting. > > http://blog.golang.org/go15gc > > "To create a garbage collector for the next decade, we turned to an > algorithm from decades ago. Go's new garbage collector is a concurrent, > tri-color, mark-sweep collector, an idea first proposed by Dijkstra in > 1978."
A concurrent collector for sure reduces latency but lowers the throughput and also steals memory bandwidth from your program. It also requires write-barriers and we decided against them b/c they slow down every program by ~5%. Though it might be somehow possible to make them optional only for the people using a concurrent GC. The key to a low latency/high throughput GC is being able to incrementally collect the heap. There is a very interesting paper that uses the type system to perform incremental collections. http://forum.dlang.org/post/mcqr3s$cmf$1...@digitalmars.com