Load-Reuse Analysis: Design and Evaluation Rastislav Bodik, Rajiv Gupta, Mary Lou Soffa PLDI'99 - PowerPoint PPT Presentation

About This Presentation
Title:

Load-Reuse Analysis: Design and Evaluation Rastislav Bodik, Rajiv Gupta, Mary Lou Soffa PLDI'99

Description:

Remember the hash tables... Paper Does This. Its load-reuse algorithm ... n = Si [f(pi) * how many times path is used] Crazy 5 different estimators ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 10
Provided by: scie5
Learn more at: http://www.cs.cmu.edu
Category:

less

Transcript and Presenter's Notes

Title: Load-Reuse Analysis: Design and Evaluation Rastislav Bodik, Rajiv Gupta, Mary Lou Soffa PLDI'99


1
Load-Reuse Analysis Design and
EvaluationRastislav Bodik, Rajiv Gupta, Mary
Lou SoffaPLDI'99
  • Presented by
  • Sue Ann Hong
  • 4/11/2006

2
Load-reuse ExampleRegister Promotion
  • Load-reuse analysis
  • Identify loads stores to the same addr on a
    path
  • a1 a4 on path p1?
  • a2 a4 on path p2?
  • Alias analysis
  • Make sure load value isnt changed
  • a0 a4?
  • Program transformation
  • e.g. partial redundancy elimination
  • hoist load a4 to path p3

path p1
path p2
path p3
load a1
store a2
store a0
load a4
3
Related Work
  • Lexical load-reuse analysis
  • Only loads with identical names
  • Value numbering
  • x 5
  • t1 x
  • t2 x
  • Only copy assignments
  • for (i0 i lt N-2 i) Ai2 Ai

Remember the hash tables
4
Paper Does This
The ideal run-time reuse finder
Its load-reuse algorithm
Profile-based Estimator
5
Evaluating the AlgorithmComparing to Ideal Reuse
Analysis
Note they do show empirically that of accesses
in history gt 1 doesnt matter too much.
  • Ideal Reuse Analysis (dynamic run-time)
  • Generally undecidable ? use simulation
  • (Simple) remember access history for each memory
    inst and find prior load or store
  • Want tight upper bound
  • Ignore possible (input-dependent, sporadic)
    reuses as noise
  • while ( c read() ) hashtbl hash(c)
  • Still, how input-independent is the simulation?
  • Identified reuse level (SPEC95)
  • See p67. Tall bars Something like 55 of overall
    loads are reuses.

18
6
Load Reuse AnalysisA must-alias analysis
  • Value Name Graph (Data-flow analysis)
  • An addr value flows between two addr exprs if
    they access the same addr (theyre
    equivalencies).
  • 3 steps for 3 goods
  • Symbolic interpretation
  • Find equivalences after algebraic simplification
  • Create synthetic names
  • Symbolic value numbering
  • Use the synthetic names, and backward flow from
    temps,
  • find equivalences due to assignment to temps
  • Data-flow analysis
  • Connect the equivalences from prev steps along
    specific paths

store(2x12) ? 2x12 y 2x 8
- z load (y4) ? 2x12
Remember the hash tables
7
Profile-based EstimatorsIntuition
  • Reuse-analysis ? which path contains what reuses
    f(pi) ? Z
  • Ideal analysis ? how many reuses overall? n
  • n Si f(pi) how many times path is used
  • Crazy 5 different estimators
  • ? lower and upper bounds to compensate for edge
    profiling errors

8
Experiments
  • Figure 8 on p75.
  • How do you interpret that thing??
  • How possible aliasing could make reuses
    useless.
  • Ideal found 55 of loads have reuse
  • Their analysis found 80 of those.
  • Other than that, the paper doesnt really have
    conclusions.
  • What happened after this paper (1999)?
  • blah

9
Discussionsfrom class
  • Bodiks notion of defining and comparing to ideal
    performance is different from the usual approach
    of giving overall optimization performance. In
    fact, hes famous for not giving numbers for run
    time optimization.
  • Is this orthogonal to cache optimization?
  • Yes. The paper doesnt address
  • cache/locality-related issues.
  • I probably shouldnt have laughed at the author
    for saying Such an amount of registers gt34
    will be soon available in general-purpose
    processors. Peters PowerBook was able to
    display my presentation in contrast to my Sony.
Write a Comment
User Comments (0)
About PowerShow.com