3 ms·
Do people follow GC research at all 'for fun'? Any places/sites/people to pay attention to for the latest and greatest goings-on that may show up in production
by throw0101b 4y ago
Do people follow GC research at all 'for fun'? Any places/sites/people to pay attention to for the latest and greatest goings-on that may show up in production x years from now?
- carimura 4y agoWe try and aggregate content from the GC team here [1]. [1] https://inside.java/tag/gc https://inside.java/tag/gc
- BenoitP 4y agoI do follow Loom 'for fun', lurking the mailing list archives [1]. You can definitely do the same for GC implementation [2] (general topic list here [3]); but it may not talk a lot about external initiatives like Shenandoah. Beware that you're gonna have to filter a lot! There's patch merging and very low detail implementation conversations. For example, you'd be pleased to know that G1 can now skip a guard in card-table clearing [4]. Don't ask me what is the card table and guards and why do you need to clear it, though. One thing I'm looking for in GC advances is new hardware support for it in RISC-V J extension. There's gonna be memory tagging (helping security and memory management in GCs), and pointer masking (hardware support for what ZGC does under the hood)[5]. But we're probably a good 5 years away from seeing that in real life, if ever. [1] https://mail.openjdk.org/pipermail/loom-dev/ https://mail.openjdk.org/pipermail/loom-dev/ [2] https://mail.openjdk.org/pipermail/hotspot-gc-dev/ https://mail.openjdk.org/pipermail/hotspot-gc-dev/ [3] https://mail.openjdk.org/mailman/listinfo https://mail.openjdk.org/mailman/listinfo [4] https://mail.openjdk.org/pipermail/hotspot-gc-dev/2023-March/041586.html https://mail.openjdk.org/pipermail/hotspot-gc-dev/2023-March... [5] https://github.com/riscv/riscv-j-extension/blob/master/pointer-masking-proposal.adoc https://github.com/riscv/riscv-j-extension/blob/master/point...
- suresk 4y agoI am interested in this area too, but I don't know of any single place to follow it all. I have found that there isn't an avalanche of "new" stuff, but a lot of different ideas with different tradeoffs that change in relevance based on usage patterns, languages/runtimes, and hardware characteristics. Besides the JVM resources linked by others, I found Richard Jones's "Garbage Collection Handbook" to be a decent introduction for background [1]. The Go team has written a bunch about their GC approach [2] - it is really interesting to see how it compares to the various options in the JVM and under which scenario you might prefer one or the other. And occasionally there are interesting articles on arxiv. 1. http://gchandbook.org/ http://gchandbook.org/ 2. https://go.dev/doc/gc-guide https://go.dev/doc/gc-guide
- mike_hearn 4y agoSure, I follow it but HotSpot is state-of-the-art, so if you follow that team then you're basically following GC research already. There's a little to be found in academia, but only rarely these days. The implementation cost to get to the cutting edge is too high.
- pjmlp 4y agoYes, it is a cool thing when one is into compilers.