【技術メモ】CMS GC
CMS-GC
CMS-GC=Concurrent Mark Sweep-GC
特徴
- FullGCを短時間化することが目的
- youngのGC時は、必ずJava停止
- oldのGC時は、解放時のみJava停止
- Gabageを探す間は止まらないがCPU増加
- コンパクト化しない、その分早いがヒープは断片化
- 断片化のクリーンアップ時にはJava停止
-XX:+UserParNewGC -XX:+UseConcMarkSweepGC
コンカレントサイクル
- Initial Mark ←Stop the world
- Concurrent mark
- Concurrent preclean
- Concurrent abortable preclean
- Remark (Final mark) ← Stop the world
- Concurrent sweep
- Concurrent reset