1 Dynamic Power Management for Streaming Data Nathaniel

  • Slides: 23
Download presentation
1 Dynamic Power Management for Streaming Data Nathaniel Pettis, Le Cai, and Yung-Hsiang Lu

1 Dynamic Power Management for Streaming Data Nathaniel Pettis, Le Cai, and Yung-Hsiang Lu ISLPED’ 04, August 9 -11, 2004 指導教授: Chia-Lin Yang Reporter: Po-Liang Wu

2 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

2 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

3 Introduction • Currently, many devices have several power consumption states, such as idle,

3 Introduction • Currently, many devices have several power consumption states, such as idle, sleep, turned off. • Dynamic power management (DPM) changes a component’s power states to save power. • However, change power states may introduce extra overheads both on performance and energy

4 Introduction • This paper inserts a buffer between producer and consumer to achieve

4 Introduction • This paper inserts a buffer between producer and consumer to achieve longer idle period and reduce power consumption. Producer Disk Buffer Consumer RAM Decoder

5 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

5 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

6 Problem Description Producer Wake up Producer Sleep • α: the rate of storing

6 Problem Description Producer Wake up Producer Sleep • α: the rate of storing data into the buffer constant • β: the rate of removing data from the buffer variable • Q: Maximum data can be stored in the buffer • λ: awakening delay • w: awakening point

7 Problem Description • In reality, consuming rate β may vary, so this paper

7 Problem Description • In reality, consuming rate β may vary, so this paper models β as a random variable. – f(β): the density function of β – Let γ be the expected value of β, • We assume that α > γ; otherwise, the buffer will eventually underflow.

8 Energy Penalty for Underflow • Awakening point w size: – Large: the buffer

8 Energy Penalty for Underflow • Awakening point w size: – Large: the buffer consumes more power – Small: the buffer will underflow easily • This paper qualifies underflow by assigning an energy penalty when underflow occurs. • The underflow occurs only if the consumed data exceeds awakening data w, that is λβ > w.

9 Energy Penalty for Underflow • Let ρ be the energy penalty for each

9 Energy Penalty for Underflow • Let ρ be the energy penalty for each MB of underflowed data. • Let p(w) be the penalty energy: amount of data overflow x: data consuming rate f(x): consuming rate probability

10 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

10 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

11 Mathematical Solution (w- λγ)+(α-γ)t 1 average amount of data w- λγ α: producing

11 Mathematical Solution (w- λγ)+(α-γ)t 1 average amount of data w- λγ α: producing rate γ: average consuming rate w: awakening point • Q = (w- λγ)+(α-γ)t 1 • Average data during t 1: [(w- λγ) + (w- λγ+(α-γ)t 1)] / 2

12 Mathematical Solution • System energy consumption in one period = producer energy +

12 Mathematical Solution • System energy consumption in one period = producer energy + buffer energy + underflow penalty • Producer energy: pp*t 1+k, k is a constant • Buffer energy: • Underflow penalty: • Power consumption: energy consumption/(t 1+t 2)

13 Mathematical Solution • Let S be the amount of data is produced in

13 Mathematical Solution • Let S be the amount of data is produced in a period, S = α*t 1 • The expected length of one period t 1+t 2 = S/γ • Power consumption: • We have two variables, S and w, to minimize average power in one period. • We take partial derivatives with respect to S and w to derive optimal value S*, w* and Q*.

14 Mathematical Solution When pb is large, we should decrease w*. When ρ increases,

14 Mathematical Solution When pb is large, we should decrease w*. When ρ increases, w* should increase to avoid underflowing. α: producing rate γ: average consuming rate w: awakening point ρ: energy penalty per MB When γ is large, w* should increase to keep more data.

15 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

15 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

16 Experiments Configurations Application MPEG-1 video codec Consuming rate (β) 1. 5 Mbps +-

16 Experiments Configurations Application MPEG-1 video codec Consuming rate (β) 1. 5 Mbps +- 50% with uniform distribution Producing rate (α) 1. 824 MB/s Awakening delay (λ) 0. 238 s Energy penalty (ρ) 10 J/MB Producer power consumption (pp) 0. 221 W Buffer power consumption (pb) 0. 012 W/MB Optimal awakening point (w*) 44. 6 k. B Optimal buffer size (Q*) 2. 06 MB

17 Experiment Results – Buffer vs. Unbuffered State-changing overhead Energy Reduction • The power

17 Experiment Results – Buffer vs. Unbuffered State-changing overhead Energy Reduction • The power saving is 74. 5% if we can turn off each byte of buffer. • The power saving is 73. 6% if we use 256 KB as the unit of buffer. • For MPEG-2 video, the power saving is 34%

18 Experiment Results – Buffer Size and Awakening Point • When the awakening point

18 Experiment Results – Buffer Size and Awakening Point • When the awakening point is less the w*, power savings can be achieved by increasing the buffer size. w*

19 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

19 Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion

20 Conclusion • This paper presents a method to calculate optimal buffer size and

20 Conclusion • This paper presents a method to calculate optimal buffer size and awakening point for streaming data to reduce power consumption. • The results shows over 74% power reduction for MPEG-1 video and 34% for MPEG-2 video.

21 Q&A • Is it reasonable to assume that each unit of buffer can

21 Q&A • Is it reasonable to assume that each unit of buffer can be turned? Can the overhead of turning on/off the buffer be neglected? • If we have the knowledge of working load, can we adaptively change the buffer size or change the device power mode appropriately?

22 Thank You !

22 Thank You !

23 Examples – DPM P=400 m. W Run 90 us 10 us 160 ms

23 Examples – DPM P=400 m. W Run 90 us 10 us 160 ms P=50 m. W P=0. 16 m. W Idle 90 us Sleep