ProfileDriven Code Execution for Low Power Dissipation - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

ProfileDriven Code Execution for Low Power Dissipation

Description:

... for code annotation that select run-time the optimal number ... dk is the average Hamming distance between input vectors that are exactly k steps apart. ... – PowerPoint PPT presentation

Number of Views:61
Avg rating:3.0/5.0
Slides: 17
Provided by: davinc
Category:

less

Transcript and Presenter's Notes

Title: ProfileDriven Code Execution for Low Power Dissipation


1
Profile-Driven Code Execution for Low Power
Dissipation
  • Diana Marculescu
  • ISLPED00

2
Introduction
  • ? an optimal level of parallelism for energy
    consumption
  • ? a compiler-assisted technique for code
    annotation that select run-time the optimal
    number of instructions to be fetched or executed
    in parallel as far as energy is concerned.
  • Software-driven and a fine grain energy
    characterization on a per basic block, per
    process basis.

3
Introduction
  • In superscalar processors, the hardware may
    execute from one to eight instruction per cycle.
  • If a certain instruction is dependent or doesnt
    meet the constraint,
  • only the instruction preceding it in the
    sequence are issues,
  • hence the variability in issue rate.

4
Example
  • Four 16-bit multipliers able to perform the
    multiplication

Total energy per operation
5
Profile-Driven Instruction Execution for energy
Optimization
  • Analytic model
  • The effect of speculative execution

6
Analytic model
  • Power consumption is a function of the switched
    capacitance of a module.
  • So, use the average Hamming distance.

7
Analytic model
  • Proposition 1
  • If an input sequence Xnn gt 0 is modeled by a
    lab-one Matkov chain, p(x) is the probability of
    occurrence of vector x and pk(xy) is the
    conditional probability of making a transition
    from y to x in exactly k steps, then the average
    Hamming k-distance denoted

  • converges when k -gt 8 and the limit is

8
Analytic model
  • dk is the average Hamming distance between input
    vectors that are exactly k steps apart.
  • Thus, dk is a measure of the average switching
    activity when exactly k units are used to process
    the input sequence I parallel.

9
Analytic model
  • If a data trace Xnn gt 0 is modeled by a
    lab-one Matkov chain, and Ek Em(dk) is the
    energy consumed per operation when k identical
    functional units are available, then
  • where Em is the energy macromodel and D is as in
    Proposition 1.

10
Analytic model
  • The results presented above offers an answer to
    what is the optimal number of instructions to be
    executed in parallel?.
  • The energy cost per operation for k instructions
    issued in parallel is proportional to dk..

11
The effect of speculative execution
If the branch Is mispredicted
12
Profile-Driven Code-Annotation for Low-Energy
Code Execution
  • In practice, computing dk using proposition(1) is
    so expensive since it implies repeated matrix
    multiplications.
  • The result do not capture the effect of
    speculative execution.
  • Thus, propose profile-driven methodology to find
    the optimal number of instructions to be executed
    in parallel for each basic block.

13
Profile-Driven Code-Annotation for Low-Energy
Code Execution
  • Assume that the input program is simulated for a
    typical input stream with an execution rate
    varying between 1 and K.

14
Profile-Driven Code-Annotation for Low-Energy
Code Execution
  • After collecting the statistics for each basic
    block,
  • the value of k which gives the minimum value of
    switched capacitance for the execution stage is
    used to annotate all instructions in the basic
    block under consideration.

15
Experimental Results
16
Conclusion
  • Present a novel technique for code optimization
    for low power based on profile driven
    methodology.
  • The technique can be used as means
  • for prolonging the battery life by decreasing
    the energy consumption,
  • for the thermal management by achieving
    significant average power reduction in the
    execution stage.
Write a Comment
User Comments (0)
About PowerShow.com