Incremental GC for Ruby interpreter
summary
Claim: Ruby 2.2 ships an incremental GC implemented in MRI/CRuby that combines generational and incremental techniques, using a write-barrier-unprotected objects classification to avoid breaking C extensions. Implementation details include bitmap-managed state bits, incremental marking interleaved with mutator execution, and scanning black unprotected objects at pause end. Results show major-GC pause spikes vanish (minor pauses remain), throughput stays comparable to Ruby 2.1, and compatibility is preserved.
AI-written summary · about








