The .NET Garbage Collector
summary
Explains exactly how the .NET GC traces roots, compacts or free-lists, and runs background GC for gen‑2 on large heaps (30–60 GB); gives concrete fixes that worked: large page support (p95 down 18.5%, p50 down 9%), splitting LOH/small‑heap locks (latency down ~10%), and tuning LOH behavior with LOH threshold 85,000 bytes or array pooling. Shows diagnostic workflow (start with perfview and SOS and CLR MD), points to settings to limit GC heaps in containers, and reports measured allocations like ~700 MB/s and 3.1% time paused in GC.
AI-written summary · about
chapters (10)
- 0:00Intro
- 1:00How does GC work?
- 6:11Generational GC
- 10:05Server GC
- 13:19The world is changing
- 18:00Things we are doing
- 22:45Future Focus Areas
- 24:17Checking GC performance
- 29:52Some other issues
- 36:12Resources
related talks
58mLook Mommy, No GC!
40mTrash Talk - Exploring the Memory Management in the JVM
44mStaying friendly with the GC
52mGC Tuning & Troubleshooting Crash Course
21mMemory: Don't Forget to Take Out the Garbage
53mCalibrate Garbage Collection on the Ground and Run Your Java App
43mGarbage Collection in Java: The Performance Benefits of Upgrading
31mJavaScript memory management: Visual Guide
