1 / 28

Runtime Software Power Estimation and Minimization Tao Li

Runtime Software Power Estimation and Minimization Tao Li. Power-aware Computing. Power: Software Perspective & Impact. Power estimation: the first step to power management & optimization Software contributes to & largely impacts power consumption.

judd
Download Presentation

Runtime Software Power Estimation and Minimization Tao Li

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Runtime Software Power Estimation and Minimization Tao Li

  2. Power-aware Computing

  3. Power: Software Perspective & Impact • Power estimation: the first step to power management & optimization • Software contributes to & largely impacts power consumption

  4. Power: Software Perspective & Impact (Contd.) • It is crucial to model power from the perspective of software • Evaluate software energy in early design stage • Understand impact of software optimizations on energy • Support run-time power management and optimizations

  5. Software Power Estimation: Current Techniques • Instruction level modeling • Computation intensive • High level macro-modeling • Difficult to apply to general code • Event counting based modeling • Impacted by the availability of performance counters • Architecture level simulation • Large slowdown

  6. Challenges in Run-time Power Estimation • High fidelity & fast speed • On-the-fly estimation capability, non-intrusive & low overhead • Simplicity, availability and generality

  7. Experimental Methodology • SoftWatt: cycle-accurate & full-system power simulation framework • SimOS infrastructure, Wattch power model • Commercial OS & real applications • Out-of-order superscalar processor • Caches & memory hierarchy • Low-power disk

  8. Experimental Methodology (Contd.) • Applications • E-mail and file management (sendmail, fileman) • Java (SPECjvm98: db, jess, javac, jack, mtrt, compress) • SPECInt95 (gcc, vortex) • Database (Postgres: select, update, join) • Miscellaneous (pmake, osboot)

  9. OS Power Characterization • OS power varies from one application to another • 29 Watt (gcc) ~ 66 Watt (fileman) • Variance of power consumption in OS service routines & invocations

  10. OS Power Characterization (Contd.) • OS routine power correlates with its performance • Circuits used to exploit ILP burn significant portion of power • The number of in-flight instructions that flow through impacts circuit switching activity • For a given OS routine, similar IPC indicates similar circuit switching activity and therefore, similar power

  11. OS Routine Power-Performance Correlation SCSI Disk Interrupt Handler Read File System Call

  12. Routine Level OS Power Model • Idea: use a linear regression model Proutine=k1*IPCroutine+k0 to track the OS routine power showing different performance • Energy(OS)= Sum [ Energy(OS routines) ] • = Sum [ Power(OS routines)*Time(OS routines) ]

  13. Routine Level OS Power Model (Contd.) : Model Fitting Error

  14. Routine Level OS Power Modeling • Pre-characterization • Low level energy simulation • Model fitting • Run-time estimation • OS routine boundaries • Evaluation using counter values

  15. Routine based Regression Model Proutine=k1*IPCroutine+k0 Flat Regression Model POS=g1*IPCOS+g0 Cumulative Estimation Error

  16. Per-routineEstimation Error Flat Regression Model POS=g1*IPCOS+g0

  17. Per-routine Estimation Error (Contd.) Routine based Regression Model Proutine=k1*IPCroutine+k0

  18. OS Energy Dissipation 92% 89%

  19. Phases in Programs (8-issue machine) • Resources are utilized differently during different phases of program execution Benchmark: SPECjvm98 jess • Average IPC - User: 2.1, OS: 1.1

  20. Power Minimization via Processor Resource Adaptations • Adapt processor resources to program needs • What can be adapted? • Bandwidth of fetch/decode/issue/retire… • Size of instruction window, re-order buffer, load store queue… • Reduce power, retain performance

  21. Effects of Tuning Processor Resource for the OS 8-issue -> 4-issue OS Performance degradation: 4% OS Power savings: 50%

  22. IPC (Inst. Per Cycle) Sampling Window A B C D E F Cycles Adaptation Previous Approach for Adaptations • Sampling

  23. Problemswith Sampling based Adaptations (Contd.) • OS executions • Short-lived

  24. OS-aware Routine based Adaptations • OS-aware: • Identify OS executions via processor execution modes • Just-in-time & full coverage of OS activities • Routine-based: • Adapt processor resources at OS routine boundaries • Precise exceptions: drained pipeline • Achieve minimum adaptation overhead

  25. OS-awareRoutine based Adaptations (Contd.) • Apply optimal adaptation for individual OS routine • Exploit the routine level Energy-Delay Product variance OS Services

  26. Routine based Adaptations: OS Power

  27. OS Performance

  28. OS Power & Performance Tradeoff

More Related