Recursive data structure profiling

Easwaran Raman, David I. August

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

29 Scopus citations


As the processor-memory performance gap increases, so does the need for aggressive data structure optimizations to reduce memory access latencies. Such optimizations require a better understanding of the memory behavior of programs. We propose a profiling technique called Recursive Data Structure Profiling to help better understand the memory access behavior of programs that use recursive data structures (RDS) such as lists, trees, etc. An RDS profile captures the runtime behavior of the individual instances of recursive data structures. RDS profiling differs from other memory profiling techniques in its ability to aggregate information pertaining to an entire data structure instance, rather than merely capturing the behavior of individual loads and stores, thereby giving a more global view of a program's memory accesses. This paper describes a method for collecting RDS profile without requiring any high-level program representation or type information. RDS profiling achieves this with manageable space and time overhead on a mixture of pointer intensive benchmarks from the SPEC, Olden and other benchmark suites. To illustrate the potential of the RDS profile in providing a better understanding of memory accesses, we introduce a metric to quantify the notion of stability of an RDS instance. A stable RDS instance is one that undergoes very few changes to its structure between its initial creation and final destruction, making it an attractive candidate to certain data structure optimizations.

Original languageEnglish (US)
Title of host publicationProceedings of the 3rd 2005 ACM SIGPLAN Workshop on Memory Systems Performance, MSP 2005
PublisherAssociation for Computing Machinery, Inc
Number of pages10
ISBN (Electronic)1595931473, 9781595931474
StatePublished - Jun 12 2005
Event3rd ACM SIGPLAN Workshop on Memory Systems Performance, MSP 2005 - Chicago, United States
Duration: Jun 12 2005 → …

Publication series

NameProceedings of the 3rd 2005 ACM SIGPLAN Workshop on Memory Systems Performance, MSP 2005


Other3rd ACM SIGPLAN Workshop on Memory Systems Performance, MSP 2005
Country/TerritoryUnited States
Period6/12/05 → …

All Science Journal Classification (ASJC) codes

  • Hardware and Architecture
  • Computer Science Applications
  • Software


  • Dynamic shape graph
  • List linearization
  • Memory profiling
  • RDS
  • Shape profiling


Dive into the research topics of 'Recursive data structure profiling'. Together they form a unique fingerprint.

Cite this