ACM Home Page
Please provide us with feedback. Feedback
An efficient profile-analysis framework for data-layout optimizations
Full text PdfPdf (246 KB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
Portland, Oregon
Pages: 140 - 153  
Year of Publication: 2002
ISBN:1-58113-450-9
Also published in ...
Authors
Shai Rubin  University of Wisconsin-Madison, Madison, WI
Rastislav Bodík  University of Wisconsin-Madison, Madison, WI
Trishul Chilimbi  Microsoft Research, Redmond, WA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 61,   Citation Count: 27
Additional Information:

abstract   references   cited by   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/503272.503287
What is a DOI?

ABSTRACT

Data-layout optimizations rearrange fields within objects, objects within objects, and objects within the heap, with the goal of increasing spatial locality. While the importance of data-layout optimizations has been growing, their deployment has been limited, partly because they lack a unifying framework. We propose a parameterizable framework for data-layout optimization of general-purpose applications. Acknowledging that finding an optimal layout is not only NP-hard, but also poorly approximable, our framework finds a good layout by searching the space of possible layouts, with the help of profile feedback. The search process iteratively prototypes candidate data layouts, evaluating them by "simulating" the program on a representative trace of memory accesses. To make the search process practical, we develop space-reduction heuristics and optimize the expensive simulation via memoization. Equipped with this iterative approach, we can synthesize layouts that outperform existing non-iterative heuristics, tune application-specific memory allocators, as well as compose multiple data-layout optimizations.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
2
3
4
5
6
7
8
9
10
11
 
12
 
13
FERDINAND,C.,AND WILHELM, R. Fast and efficient cache behavior prediction.
 
14
15
16
 
17
 
18
 
19
20
 
21
22
23
 
24
 
25
VAN DER WAL, R. Programmer's toolchest: Source-code profilers for Win32. Dr. Dobb's Journal of Software Tools 23,3 (Mar. 1998), 78, 80, 82-88.
26

CITED BY  27
Collaborative Colleagues:
Shai Rubin: colleagues
Rastislav Bodík: colleagues
Trishul Chilimbi: colleagues