January 13, 2023
Conference Paper

MemGaze: Rapid and Effective Load-Level Memory Trace Analysis

Abstract

A major challenge of memory analysis tools is combining high-resolution analysis and low overhead measurement. Currently, hardware/software-based analysis of load-level sequences incurs time slowdowns of O(100×). We present MemGaze, a tool for low-overhead, high-resolution memory analysis. MemGaze uses Intel’s Processor Tracing (PT) instruction ptwrite to collect sampled and compressed memory address traces for load-level, sequence-aware analysis of data reuse. We describe multi-resolution analysis for locations vs. operations, accesses vs. spatio-temporal reuse, and reuse (distance, rate, volume) vs. access patterns. Both trace size and resolution are controllable. We use MemGaze to elucidate the memory effects of different data structures and algorithms. For sampled traces that are ˜1% of a full one, analysis metrics have 1-25% MAPE for histograms of varying dynamic sequence lengths. With current suboptimal kernel support (PT runs continuously), MemGaze’s time overhead is typically 10–95%; 7× at worst. However, when PT runs only during samples, overhead is 10–35% on memory intensive regions and correlates with executed ptwrites.

Published: January 13, 2023

Citation

Kilic O.O., N.R. Tallent, Y. Suriyakumar, C. Xie, A. Marquez, and S. Eranian. 2022. MemGaze: Rapid and Effective Load-Level Memory Trace Analysis. In IEEE International Conference on Cluster Computing (CLUSTER 2022), September 5-8, 2022, Heidelberg, Germany, 484-495. Piscataway, New Jersey:IEEE. PNNL-SA-174803. doi:10.1109/CLUSTER51413.2022.00058