Fil-Cの驚異的なガベージコレクタFUGC:並列、同時実行、高精度
2025-09-05
Fil-Cは、FUGC(Fil's Unbelievable Garbage Collector)と呼ばれる並列同時実行型のオンザフライグレイスタックDijkstra正確非移動式ガベージコレクタを採用しています。FUGCは、マルチスレッド同時実行マーキングとスイープを行い、「ソフトハンドシェイク」メカニズムを使用してミューテータースレッドとのノンブロッキングなインタラクションを実現し、グローバルなストップザワールドを回避します。グレイスタックアプローチによりロードバリアが不要になり、シンプルなストアバリアのみが必要となり、Dijkstraバリアによって正確なマーキングが保証されます。FUGCは非移動式であるため、同時実行の実装が簡素化され、C、Java、JavaScriptスタイルのメモリ管理(ファイナライザ、弱参照、弱マップなど)をサポートし、Fil-Cのメモリ管理の効率と安全性を大幅に向上させています。
開発
ガベージコレクタ