OpenJDK 17のShenandoah:サブミリ秒のGC Pauseを実現
(developers.redhat.com)- Shenandoah Garbage Collectionプロジェクトは、GC時の一時停止時間を減らすことを目標としている
→ Concurrent処理によって応答性を高める
→ JDK12:Concurrent Heap Evacuation を導入し、アプリを停止せずにヒープをクリーンアップ可能
→ JDK14:Concurrent Class Unloading
→ JDK16:Concurrent Reference Processing
→ JDK17:Concurrent Thread-stack Processing の導入により、サブミリ秒のPauseが可能になった
2件のコメント
ZGCもかなり有名ですね。
ただし、変数のポインタで64bitを活用し(https://img1.daumcdn.net/thumb/R1280x0/…
以前、スクリプト言語VMの性能関連で調べたことがありましたが、
JSのV8の場合は次のような原理だそうです。
https://v8.dev/blog/concurrent-marking
https://v8.dev/blog/orinoco
https://v8.dev/blog/trash-talk
https://v8.dev/blog/high-performance-cpp-gc
Shenandoah gcの特徴と簡単なアルゴリズムについての紹介
https://dev-punxism.tistory.com/entry/Shenandoah-gc
https://meetup.toast.com/posts/234
私はシェナンドーといえば、Take Me Home Country Roadの歌詞でしか触れたことがありませんでしたが..