Look Mommy, No GC!
summary
Shows how to find and fix real .NET GC pain using CLR performance counters, PerfView / ETW traces and static analyzers like the Roslyn-based heap allocations analyzer and CLR Heap Allocation Analyzer. Demonstrates concrete causes — excessive boxing causing repeated allocations, lambdas that capture state and allocate closures, LINQ producing 10x more allocations and 10x worse with LINQ benchmarks — and simple fixes that cut allocation and GC time dramatically (examples show 60% time in GC before fixes).
AI-written summary · about
chapters (14)
- 0:00Start
- 4:57PERFORMANCE COUNTERS
- 11:08DIVE DEEPER WITH EVENT TRACING FOR WINDOWS
- 18:31STATIC CODE ANALYSIS
- 24:00DYNAMIC MEMORY PROFILING
- 25:40NET MEMORY PROFILER AND MEMORY LEAKS
- 35:08HOW DOES SEARCHING WORK?
- 35:22HOW DOES COMPARING WORK?
- 35:39WHAT'S THE DIFFERENCE?
- 36:21OBJECT EQUALITY COMPARER
- 37:50GENERIC EQUALITY COMPARER
- 41:07LAMBDAS AND CLOSURES
- 48:57THE RESULTS
- 57:01PREFER VALUE TYPES
related talks
53mDebugging .NET Apps
57mWriting a custom, real-world .NET GC
57mMake your custom .NET GC — "whys" and "hows"
47mSolving .NET performance issues
01h 15mCSI .NET – Debugging .NET Applications
59mPerformance tricks I learned from contributing to open source .NET packages
01h 06m.NET Systems Programming Learned the Hard Way
01h 00mMetaprogramming for the masses
