koala a platform for os level power management
play

KOALA A PLATFORM FOR OS-LEVEL POWER MANAGEMENT D.C. Snowdon E. Le - PowerPoint PPT Presentation

KOALA A PLATFORM FOR OS-LEVEL POWER MANAGEMENT D.C. Snowdon E. Le Sueur S.M. Petters G. Heiser Image by Diliff under CC license KNOBS CPU frequency CPU voltage CPU sleep states memory and bus frequency power states of IO


  1. KOALA A PLATFORM FOR OS-LEVEL POWER MANAGEMENT D.C. Snowdon E. Le Sueur S.M. Petters G. Heiser

  2. Image by Diliff under CC license

  3. KNOBS • CPU frequency • CPU voltage • CPU sleep states • memory and bus frequency • power states of IO devices (not considered here)

  4. SIMPLISTIC POLICIES Speed Time

  5. SIMPLISTIC POLICIES Speed Time

  6. REALITY CHECK 1.7 1.1 gzip swim 1.6 swim Normalised Energy gzip Normalised Energy 1.5 1 1.4 1.3 0.9 1.2 1.1 0.8 1 0.9 0.7 600 800 1000 1200 1400 1600 1800 Frequency (MHz)

  7. CYCLE COUNT 2 swim equake mgrid 1.8 gzip Normalised Cycles 1.6 1.4 1.2 1 600 800 1000 1200 1400 1600 1800 CPU Frequency (MHz)

  8. OVERHEAD • switching frequency and power incurs CPU downtime • Pentium-M • frequency change: 10µs • voltage change asynchronous • Opteron • frequency and voltage change: 2ms (140µs out of spec)

  9. TEMPERATURE 28.6 Input Power (W) 28.4 28.2 28 27.8 High Fan Medium Fan 27.6 Low Fan 50 52 54 56 58 60 62 64 66 68 Temperature (degrees C)

  10. POWER SUPPLY 38 36 34 Input Power (W) 32 30 28 26 Expected 24 1.3V 1.2V 22 1.1V 20 1.0V 18 18 20 22 24 26 28 30 32 34 36 38 Predicted Input Power (W)

  11. TIME MODEL T = C cpu f cpu + C bus f bus + C mem f mem + C io f io + . . . The coefficients are workload-specific, and can be C bus α 1 PMC 1 + α 2 PMC 2 + . . . = C mem β 1 PMC 1 + β 2 PMC 2 + . . . =

  12. ENERGY MODEL E dyn ∝ cyc × V 2 . E = V 2 cpu ( γ 1 f cpu + γ 2 f bus + γ 3 f mem ) ∆ t + V 2 cpu ( α 0 PMC 0 + · · · + α m PMC m ) + γ 4 f mem ∆ t + β 0 PMC 0 + · · · + β m PMC m + P static ∆ t,

  13. UNIFIED POLICY η = P 1 − α T 1+ α , -1 0 1 α forces highest performance

  14. UNIFIED POLICY η = P 1 − α T 1+ α , -1 0 1 α minimises energy-delay product

  15. UNIFIED POLICY η = P 1 − α T 1+ α , -1 0 1 α minimises energy

  16. UNIFIED POLICY η = P 1 − α T 1+ α , -1 0 1 α minimises power consumption

  17. IMPLEMENTATION • recent Linux kernel (2.6.24.4) • per-process collection of relevant statistics • policy-decision when process blocks or preempts • use data from previous time slice to predict optimal setting • assumes temporal locality • uses logarithmic tables to simplify calculation (no float)

  18. EVALUATION The Laptop The Server • Dell Latitude D600 • AMD Opteron 246 • Pentium-M 0.8 – 1.8 GHz • 0.8 – 2 GHz • 0.98 – 1.34 V • 0.9 – 1.5 V • three sleep states • high switching overhead • measured at battery • measured at wall socket

  19. CHARACTERISATION The Laptop The Server • number of completed burst • quadword write transfers transactions • L2 cache misses • number of lines removed • dispatch stalls due to from L2 cache reorder buffer being full • correlation 0.98 / 0.96 • DRAM accesses due to page conflicts • correlation 0.98 / 0.98

  20. MODEL ACCURACY 105 Est E Act E 100 95 Energy Consumption (%) 90 85 80 75 70 65 lbm test mcf test equake ref swim ref povray train gzip graphic ref milc test libquantum test dealII test sjeng test gcc train cactusADM test bzip2 test 2 bzip2 test 1 omnetpp train bwaves test gromacs test xalancbmk test wrf test namd test calculix train zeusmp test astar test tonto test hmmer test h264 test sphinx train

  21. MODEL ACCURACY 110 Est T Act T 105 100 Performance (%) 95 90 85 80 lbm test mcf test equake ref swim ref povray train gzip graphic ref milc test libquantum test dealII test sjeng test gcc train cactusADM test bzip2 test 2 bzip2 test 1 omnetpp train bwaves test gromacs test xalancbmk test wrf test namd test calculix train zeusmp test astar test tonto test hmmer test h264 test sphinx train

  22. UNIFIED POLICY � 140 lbm_test mcf_ref 130 swim_ref gzip_graphic_ref milc_test 120 Actual Energy (%) povray_test equake_ref 110 100 90 80 70 -1 -0.5 0 0.5 1 �

  23. UNIFIED POLICY 110 100 Actual Performance (%) 90 80 70 lbm_test mcf_ref 60 swim_ref gzip_graphic_ref milc_test 50 povray_test equake_ref 40 -1 -0.5 0 0.5 1 �

  24. BATTERY -AWARE POLICY 1.2 1.2 � , Normalised Battery State Normalised Energy/Time 1 1.1 0.8 1 0.6 0.9 0.4 0.8 � Battery Level 0.2 0.7 Execution Time Energy 0 0.6 0 2 4 6 8 10 12 14 16 18 20 Iteration

  25. DISCUSSION • practicality • cooperation from vendors, built-in power measurement • energy management by hardware or software • hints from applications • is this too fine-grained • dumb component shutdown (both software and hardware)

Recommend


More recommend