MemPerf: Profiling Allocator-Induced Performance Slowdowns
summary
MemPerf is a profiler that pinpoints allocator-induced slowdowns by modeling heap-object life cycles and distinguishing slow management operations from slow memory accesses. It builds an oracle from repeated runs to replace observed allocator-cycle costs, uses thread- and type-aware performance modeling plus PMU sampling and shadow memory to attribute cache and TLB misses to heap objects, and classifies miss types. The implemented tool reports 98% detection of >5% slowdowns with no false positives, imposes about 7.5% overhead, and finds real allocator design issues.
AI-written summary · about
chapters (13)
- 0:00MemPerf introduction
- 2:36Allocator slowdown causes
- 4:03BS simulation modeling
- 5:28TLB and cache misses
- 8:20glibc vs tcmalloc case
- 9:49Evaluation against existing profilers
- 10:52MemPerf overhead summary
- 11:56Developer use cases
- 12:16Q&A: Scalability
- 13:39Q&A: Distinguishing allocator-induced misses
- 14:41Q&A: Allocator design
- 15:48Q&A: Application fixes
- 16:54Q&A: Architecture specifics
