Application-Support Particle Filter for Dynamic Voltage Scaling of Multimedia Applications

Dynamic Voltage and Frequency Scaling (DVFS) is an effective low-power technique for real-time workloads. Its effectiveness critically depends on the accurate prediction of the task execution time. Many DVFS approaches have been proposed, but they are insufficient for highly nonstationary workloads. Several recent DVFS techniques adopted adaptive filters to improve accuracy. However, their improvement was rather limited, since they mainly focused on applying a filter framework to the target application without tuning it. We address this issue by proposing Particle Filter (PF)-based video decoders (MPEG2 and H.264) which exploit application-specific characteristics. More specifically, our PF-based video decoders utilize the size of each frame for the prediction of its decoding time. Compared to previous work, the PF is more suitable for our purpose, since it achieves higher prediction accuracy, even for highly nonstationary workloads such as H.264 clips. Our results show that the energy saved by the proposed approach is comparable to that of the ideal policy called oracle-DVFS, while the existing methods we tested were far inferior to oracle-DVFS in terms of H.264 video decoding. Additionally, when our method was used, only 0.40 and 6.88 percent of the frames missed their deadlines with negligible computational overhead for MPEG and H.264, respectively.

[1]  Massoud Pedram,et al.  Energy-Aware MPEG-4 FGS Streaming , 2005, J. Low Power Electron..

[2]  Neil J. Gordon,et al.  A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking , 2002, IEEE Trans. Signal Process..

[3]  Timothy J. Robinson,et al.  Sequential Monte Carlo Methods in Practice , 2003 .

[4]  Sungroh Yoon,et al.  Run-Time Adaptive Workload Estimation for Dynamic Voltage Scaling , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[5]  Ying Tan,et al.  Workload prediction and dynamic voltage scaling for MPEG decoding , 2006, Asia and South Pacific Conference on Design Automation, 2006..

[6]  Anantha Chandrakasan,et al.  Dynamic voltage scheduling using adaptive filtering of workload traces , 2001, VLSI Design 2001. Fourteenth International Conference on VLSI Design.

[7]  Neil J. Gordon,et al.  A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking , 2002, IEEE Trans. Signal Process..

[8]  J. L. Roux An Introduction to the Kalman Filter , 2003 .

[9]  Simon J. Godsill,et al.  On sequential Monte Carlo sampling methods for Bayesian filtering , 2000, Stat. Comput..

[10]  Chong-Min Kyung,et al.  Program Phase-Aware Dynamic Voltage Scaling Under Variable Computational Workload and Memory Stall Environment , 2011, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[11]  Larry L. Peterson,et al.  Predicting MPEG execution times , 1998, SIGMETRICS '98/PERFORMANCE '98.

[12]  Sungpack Hong,et al.  Dynamic Voltage Scaling of Supply and Body Bias Exploiting Software Runtime Distribution , 2008, 2008 Design, Automation and Test in Europe.

[13]  F. Frances Yao,et al.  A scheduling model for reduced CPU energy , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[14]  Johan Pouwelse,et al.  POWER-AWARE VIDEO DECODING , 2005 .

[15]  Nando de Freitas,et al.  The Unscented Particle Filter , 2000, NIPS.

[16]  Luca Benini,et al.  Dynamic power management - design techniques and CAD tools , 1997 .

[17]  Massoud Pedram,et al.  Off-chip latency-driven dynamic voltage and frequency scaling for an MPEG decoding , 2004, Proceedings. 41st Design Automation Conference, 2004..

[18]  Taewhan Kim,et al.  Profile-based optimal intra-task voltage scheduling for hard real-time applications , 2004, Proceedings. 41st Design Automation Conference, 2004..

[19]  Yung-Hsiang Lu,et al.  Dynamic Voltage Scaling for Multitasking Real-Time Systems With Uncertain Execution Time , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[20]  Soonhoi Ha,et al.  Dynamic voltage scheduling technique for low-power multimedia applications using buffers , 2001, ISLPED '01.

[21]  Rajesh K. Gupta,et al.  Energy-aware task scheduling with task synchronization for embedded real-time systems , 2002, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[22]  Samarjit Chakraborty,et al.  Control theory-based DVS for interactive 3D games , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[23]  Dongkun Shin,et al.  A profile-based energy-efficient intra-task voltage scheduling algorithm for hard real-time applications , 2001, ISLPED'01: Proceedings of the 2001 International Symposium on Low Power Electronics and Design (IEEE Cat. No.01TH8581).

[24]  Rajesh K. Gupta,et al.  Energy-aware task scheduling with task synchronization for embedded real-time systems , 2006, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[25]  Jun S. Liu,et al.  Sequential Imputations and Bayesian Missing Data Problems , 1994 .

[26]  Massoud Pedram,et al.  Dynamic voltage and frequency scaling based on workload decomposition , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[27]  Dongkun Shin,et al.  Intra-Task Voltage Scheduling for Low-Energy, Hard Real-Time Applications , 2001, IEEE Des. Test Comput..

[28]  Yoshio Turner,et al.  Reduced energy decoding of MPEG streams , 2003, Multimedia Systems.