4 ms·
> Presumably the previous use cases are left behind No, they are not. The optimization discussed here adds something to the existing GC, and removes nothing.
by ngrilly 10y ago
> Presumably the previous use cases are left behind
No, they are not. The optimization discussed here adds something to the existing GC, and removes nothing.
> Does anyone feel confident that a 'good enough for everyone' GC will ever be produced?
The Go GC is constantly improving, and its performance in Go 1.6 and 1.7 is considered very good my most users.
- vvanders 10y agoThere's a subthread further down that points to this exact type of regression: https://news.ycombinator.com/item?id=11970313 https://news.ycombinator.com/item?id=11970313 Without full memory control you're always going to making trade-offs in terms of performance. Hopefully the GC is "good enough" for your use case but there will never be a one-size fits all GC.
- enneff 10y agoFWIW that "regression" looks like a program that depends on particular runtime characteristics to generate "artistic" output. Not really the kind of issue you can realistically develop around. In almost all practical programs the new GC (in 1.5) was a significant win, or at worst no change.
- madgar 10y ago> The Go GC is constantly improving, and its performance in Go 1.6 and 1.7 is considered very good my most users. Also true of Ruby or PHP. Which perform abysmally. "Most users" needs aren't what we look for to define technical excellence - if anything, I most often see "most users" used to guide the compromising of technical standards.
- enneff 10y agoBut Go doesn't perform abysmally. The 1.5 GC is technically excellent (ask an expert). Go does target "most users". That's the demographic. There will always be edge cases for which the general design does not work.