Presentation
A Cache Interaction Graph for Data Locality Optimization
DescriptionOptimizing cache efficiency is critical for mitigating the performance gap between CPUs and memory systems. However, the interaction between application data access patterns and the cache hierarchy complicates debugging cache performance. Existing profiling approaches can identify program performance bottlenecks but leave root-cause diagnosis of cache inefficiencies to programmer expertise. This paper presents an innovative approach that not only precisely captures where cache inefficiencies exist but also helps identify why they occur. Our methodology captures the causal relationship of cache interactions among array variables by tracking cache line evictions, while simultaneously measuring both temporal and spatial locality and classifying cache miss types. We use a new visualization technique (a Cache Interaction Graph), to correlate these metrics with detected interaction patterns to identify root causes and appropriate optimizations. Our Cachegrind extension provides variable-level data locality analysis with acceptable overhead. Our real-world cases demonstrate the effectiveness of our approach.
Event Type
Workshop
TimeMonday, 17 November 20252:01pm - 2:30pm CST
Location241


