Oilpan: Hochleistungs-Garbage-Collection für C++
High-performance garbage collection for C++
Oilpan, der Garbage Collector für C++ in Chromium, wird als eigenständige Bibliothek in V8 integriert. Der Artikel erklärt Mark-Sweep, die konservative Stack-Scanning-Methode und die Neuerungen beim Sweeping: Inkrementelles und nebenläufiges Sweeping reduzieren die Pausenzeit auf dem Hauptthread um 25–50 % (Durchschnitt 42 %). Finalizer laufen weiterhin auf dem Hauptthread, während Hintergrundthreads toten Speicher zurückgewinnen. Ziel ist es, C++-Garbage-Collection für alle V8-Embedder und C++-Entwickler einfach verfügbar zu machen.
Background sweeping has shipped in Chrome M78. Our real-world benchmarking framework shows a reduction of main thread sweeping time by 25%-50% (42% on average).