Foundationপ্রথম নীতি থেকে
LEVEL 5 · Programming Languages

Generational GC

জেনারেশনাল GC

Weak generational hypothesis ধরে নেওয়া collector — বেশিরভাগ object তরুণ মরে, তাই শুধু তরুণ generation প্রায়ই collect করে pause ছোট রাখে।

also: generational hypothesis, minor GC

nursery (young) ──survive──► old generation
        ▲ minor GC: শুধু nursery — দ্রুত, ঘন ঘন
major GC: পুরো heap — কম, ব্যয়বহুল
  • Weak generational hypothesis: “most objects die young” — empirical observation, measurement-এ যাচাইযোগ্য
  • Nursery collection cheap কারণ old generation-কে scan করতে হয় না — শুধু remembered set/card table (old→young pointer) root হিসেবে
  • Write barrier: old object-এ pointer store করলে card dirty হয় — barrier-এর per-store খরচ
  • Promotion policy, survivor space, age threshold — JVM/Go/V8-এর tuning knobs সব এখানে