Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation 2003
DOI: 10.1145/781131.781159
|View full text |Cite
|
Sign up to set email alerts
|

Predicting whole-program locality through reuse distance analysis

Abstract: Profiling can accurately analyze program behavior for select data inputs. We show that profiling can also predict program locality for inputs other than profiled ones. Here locality is defined by the distance of data reuse. Studying whole-program data reuse may reveal global patterns not apparent in short-distance reuses or local control flow. However, the analysis must meet two requirements to be useful. The first is efficiency. It needs to analyze all accesses to all data elements in full-size benchmarks and… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
34
0
7

Year Published

2004
2004
2019
2019

Publication Types

Select...
4
3
2

Relationship

0
9

Authors

Journals

citations
Cited by 198 publications
(41 citation statements)
references
References 42 publications
0
34
0
7
Order By: Relevance
“…2. As observed by several researchers, programs execute in phases [6,26,27,28], and different phases of the program exhibit different heap behavior. As the program phase changes, the heap-graph, and consequently some metrics associated with the heap-graph change to reflect the new heap behavior of the program.…”
Section: Methodsmentioning
confidence: 99%
“…2. As observed by several researchers, programs execute in phases [6,26,27,28], and different phases of the program exhibit different heap behavior. As the program phase changes, the heap-graph, and consequently some metrics associated with the heap-graph change to reflect the new heap behavior of the program.…”
Section: Methodsmentioning
confidence: 99%
“…More efficient tree-based structures reduce the complexity from O(n m) to O(n log m) [666,22], where n is the length of the reference stream and m is the number of different addresses (note, however, that due to locality the cost of the simple algorithm is typically significantly lower than n m). Ding and Zhong give an approximate algorithm that reduces the time to O(n log log m) and the space to O(log m) [182].…”
Section: The Stack Distance and Temporal Localitymentioning
confidence: 99%
“…Short reuse distances are used to characterize locality. But large reuse distances can be used to identify a return to an activity pattern that occurred a long time in the past (e.g., in a previous phase) [182].…”
Section: Program Phasesmentioning
confidence: 99%
“…To discover the application's temporal locality, we leverage the reuse distance (RD) analysis [10], in which RD is the number of distinct and different memory accesses between two consecutive references. Figure 5 shows an example reuse distance of four between two consecutive memory accesses to A.…”
Section: B Performance Estimationmentioning
confidence: 99%