230 likes | 248 Views
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. Outline. Introduction Problem Description Mathematical Solution Experiments Conclusion. Introduction.
E N D
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
Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion
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
Introduction • This paper inserts a buffer between producer and consumer to achieve longer idle period and reduce power consumption. Producer Consumer Buffer Disk Decoder RAM
Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion
Problem Description • α: the rate of storing data into the buffer • β: the rate of removing data from the buffer • Q: Maximum data can be stored in the buffer • λ: awakening delay • w: awakening point Producer Wake up Producer Sleep Producer Wake up Producer Sleep constant variable
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.
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.
Energy Penalty for Underflow • Let ρ be the energy penalty for each MB of underflowed data. • Let p(w) be the penalty energy: x: data consuming rate f(x): consuming rate probability amount of data overflow
Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion
Mathematical Solution • Q = (w- λγ)+(α-γ)t1 • Average data during t1: [(w- λγ) + (w- λγ+(α-γ)t1)] / 2 α: producing rate γ: average consuming rate w: awakening point (w- λγ)+(α-γ)t1 average amount of data w- λγ
Mathematical Solution • System energy consumption in one period = producer energy + buffer energy + underflow penalty • Producer energy: pp*t1+k, k is a constant • Buffer energy: • Underflow penalty: • Power consumption: energy consumption/(t1+t2)
Mathematical Solution • Let S be the amount of data is produced in a period, S = α*t1 • The expected length of one period t1+t2 = 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*.
Mathematical Solution When pb is large, we should decrease w*. When ρ increases, w* should increase to avoid underflowing. When γ is large, w* should increase to keep more data. α: producing rate γ: average consuming rate w: awakening point ρ:energy penalty per MB
Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion
Experiment Results – Buffer vs. Unbuffered • The power saving is 74.5% if we can turn off each byte of buffer. • The power saving is 73.6% if we use 256KB as the unit of buffer. • For MPEG-2 video, the power saving is 34% State-changing overhead Energy Reduction
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*
Outline • Introduction • Problem Description • Mathematical Solution • Experiments • Conclusion
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.
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?
Examples – DPM P=400mW Run 90us 10us 10us 160ms P=50mW P=0.16mW Idle Sleep 90us