Go maps are Swiss tables: groups of eight slots with a control word of match bytes, a 7/8 load factor, tombstones instead of empty slots on delete, and incremental growth through a …
Go rounds small allocations to 68 size classes, keeps one span per class in each P’s mcache, refills from a per-class mcentral, and packs tiny noscan objects into 16-byte blocks.
Go’s netpoller parks a blocked goroutine on a pollDesc and wakes it from epoll, so a socket read costs a goroutine, not a thread, and the runtime never blocks in a syscall it did …
Go’s arena package hands out bump-allocated storage in multi-megabyte chunks that are freed in bulk, quarantined until the GC proves nobody points into them, and set to fault on …
Go’s page allocator tracks free 8 KiB pages in a bitmap sharded into 4 MiB chunks, summarises them in a five-level radix tree, and returns memory to the OS with madvise while a …