Exposing memory access regularities using object-relative memory profiling

Qiang Wu, Easwaran Raman, Artem Pyatakov, Douglas W. Clark, Alexey Spiridonov, David I. August

Research output: Chapter in Book/Report/Conference proceedingConference contribution

19 Scopus citations


Memory profiling is the process of characterizing a program's memory behavior by observing and recording its response to specific input sets. Relevant aspects of the program's memory behavior may then be used to guide memory optimizations in an aggressively optimizing compiler. In general, memory access behavior has eluded meaningful characterization because of confounding artifacts from memory allocators, linker data layout, and OS memory management. Since these artifacts may change from run to run, memory access patterns may appear different in each run even for the same input set. Worse, regular memory access behavior such as linked list traversais appear to have no structure. In this paper we present object-relative translation and decomposition techniques to eliminate these artifacts and to expose previously obscured memory access patterns. To demonstrate the potential of these ideas, we implement two different memory profilers targeted at different sets of applications. These profilers outperform the existing ones in terms of profile size and useful information per byte of data. The first profiler is a lossless profiler, called WHOMP, which uses object-relativity to achieve a 22% better compression than the previously best known scheme. The second profiler, called LEAP, uses lossy compression to get highly compact profiles while providing useful information to the targeted applications. LEAP correctly characterizes the memory alias rates for 56% more instruction pairs than the previously best known scheme with a practical running time.

Original languageEnglish (US)
Title of host publicationInternational Symposium on Code Generation and Optimization, CGO 2004
Number of pages9
StatePublished - Jul 12 2004
EventInternational Symposium on Code Generation and Optimization, CGO 2004 - San Jose, CA, United States
Duration: Mar 20 2004Mar 24 2004

Publication series

NameInternational Symposium on Code Generation and Optimization, CGO


OtherInternational Symposium on Code Generation and Optimization, CGO 2004
Country/TerritoryUnited States
CitySan Jose, CA

All Science Journal Classification (ASJC) codes

  • General Engineering


Dive into the research topics of 'Exposing memory access regularities using object-relative memory profiling'. Together they form a unique fingerprint.

Cite this