2003
DOI: 10.1109/mm.2003.1261391
|View full text |Cite
|
Sign up to set email alerts
|

Discovering and exploiting program phases

Abstract: Understanding program behavior is at the foundation of computer architecture and program optimization. Many programs have wildly different behavior on even the largest of scales (that is, over the program's complete execution). During one part of the execution, a program can be completely memory bound; in another, it can repeatedly stall on branch mispredicts. Average statistics gathered about a program might not accurately picture where the real problems lie. This realization has ramifications for many archit… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
125
0
4

Year Published

2007
2007
2021
2021

Publication Types

Select...
5
3
1

Relationship

0
9

Authors

Journals

citations
Cited by 215 publications
(147 citation statements)
references
References 12 publications
0
125
0
4
Order By: Relevance
“…However, it is inappropriate for real-time systems as it either imposes unpredictable performance or significant energy overhead, both due to the exploration of suboptimal cache configurations. During static analysis, various cache alternatives are explored and the best cache configuration is selected for each application in its entirety (application-based tuning) [7] or for each phase of execution within an application (phase-based tuning) [17]. Regardless of the tuning method, the predetermined best cache configuration (based on design requirements) may be stored in a look-up table or encoded into specialized instructions.…”
Section: Reconfigurable Cache Architecturesmentioning
confidence: 99%
“…However, it is inappropriate for real-time systems as it either imposes unpredictable performance or significant energy overhead, both due to the exploration of suboptimal cache configurations. During static analysis, various cache alternatives are explored and the best cache configuration is selected for each application in its entirety (application-based tuning) [7] or for each phase of execution within an application (phase-based tuning) [17]. Regardless of the tuning method, the predetermined best cache configuration (based on design requirements) may be stored in a look-up table or encoded into specialized instructions.…”
Section: Reconfigurable Cache Architecturesmentioning
confidence: 99%
“…We collected traces of the most representative 300 million instruction segment of each program, following the SimPoint methodology [7]. We use the FAME simulation methodology proposed in [10] with a Maximum Allowable IPC Variance of 5%.…”
Section: Methodsmentioning
confidence: 99%
“…Selection of simulation points is usually performed based on the same idea of phase detection [3], [4]. SimPoint [5]- [8], which is the most recognized method, selects simulation points from the program counter (PC) sequence of executed instructions obtained by emulating the target processor.…”
Section: Simpointmentioning
confidence: 99%