[HN Gopher] The Green Tea Garbage Collector
___________________________________________________________________
The Green Tea Garbage Collector
Author : 0xedb
Score : 93 points
Date : 2025-10-29 17:03 UTC (5 hours ago)
(HTM) web link (go.dev)
(TXT) w3m dump (go.dev)
| luafox wrote:
| the two little slide decks showing each garbage collector in
| action are simply wonderful, and really help communicate how this
| improves go's GC situation
| dzonga wrote:
| what revenue / profitable google services are actually relying on
| golang ?
| parliament32 wrote:
| Kubernetes as a whole is the best example I can think of, given
| that it's deployed in most modern tech companies and every
| cloud provider offers a managed service.
| turtletontine wrote:
| Wow... this is an excellent article. I've always been fascinated
| by GCs (well, as long as I've known what they are), and I just
| love seeing this kind of technical but accessible explanation of
| how they work, their bottlenecks, and a great new idea about
| solving those bottlenecks. This is exactly the kind of article
| that I hope to see every time I load up hacker news
| matthewmueller wrote:
| Appreciated the human element paragraph at the end!
| pizlonator wrote:
| This is very cool.
|
| I've already been using bitvector SIMD for the sweep portion of
| mark/sweep. It's neat to see that tracing can be done this way.
|
| VGF2P8AFFINEQB FTW
| jhoechtl wrote:
| Wut? Oh boy https://www.felixcloutier.com/x86/gf2p8affineqb
| themafia wrote:
| vector, galois field, 2 to the power of 8, affine
| transformation.
|
| there's also the inverse:
| https://www.felixcloutier.com/x86/gf2p8affineinvqb
| boris_m wrote:
| What's a page?
| hedgehog wrote:
| A (usually) small amount of memory that is the standard size
| all the memory management hardware and software use. Often 16Kb
| or 4Kb. If physical memory gets mapped to logical address
| space, address space marked read only, data swapped in or out,
| or logical address space gets mapped to other hardware (say GPU
| memory or a network card's buffer) it's usually done by page.
|
| https://en.wikipedia.org/wiki/Page_%28computer_memory%29
| antonchekhov wrote:
| Acceleration by using the x86 AVX-512 extensions is especially
| compelling. Since ARM64 processors are becoming pervasive in
| server-side systems, is-there/will-there-be any optimization
| using the ARM64 NEON vector instructions in current or future Go
| versions? (The NEON instructions are 128-bit, instead of 512 bits
| in the AVX-512 set, but may still be useful.)
___________________________________________________________________
(page generated 2025-10-29 23:01 UTC)