Dynamic Cache Reconfiguration for Soft Real-Time Systems

In recent years, efficient dynamic reconfiguration techniques have been widely employed for system optimization. Dynamic cache reconfiguration is a promising approach for reducing energy consumption as well as for improving overall system performance. It is a major challenge to introduce cache reconfiguration into real-time multitasking systems, since dynamic analysis may adversely affect tasks with timing constraints. This article presents a novel approach for implementing cache reconfiguration in soft real-time systems by efficiently leveraging static analysis during runtime to minimize energy while maintaining the same service level. To the best of our knowledge, this is the first attempt to integrate dynamic cache reconfiguration in real-time scheduling techniques. Our experimental results using a wide variety of applications have demonstrated that our approach can significantly reduce the cache energy consumption in soft real-time systems (up to 74%).

[1]  TanYudong,et al.  Timing analysis for preemptive multitasking real-time systems with caches , 2007 .

[2]  Yusuf Leblebici,et al.  Energy Efficiency Comparison of Asynchronous and Synchronous Circuits Operating in the Sub-Threshold Regime , 2008 .

[3]  Bruce Jacob,et al.  Instruction-level power dissipation in the Intel XScale embedded microprocessor , 2005, IS&T/SPIE Electronic Imaging.

[4]  Frank Vahid,et al.  A One-Shot Configurable-Cache Tuner for Improved Energy and Performance , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[5]  Doug Burger,et al.  Evaluating Future Microprocessors: the SimpleScalar Tool Set , 1996 .

[6]  Isabelle Puaut,et al.  Low-complexity algorithms for static cache locking in multitasking hard real-time systems , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[7]  Nikil D. Dutt,et al.  Fast Configurable-Cache Tuning With a Unified Second-Level Cache , 2009, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[8]  Xiliang Zhong,et al.  Energy-aware modeling and scheduling of real-time tasks for dynamic voltage scaling , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

[9]  Rajesh K. Gupta,et al.  Dynamic slack reclamation with procrastination scheduling in real-time embedded systems , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[10]  Rajesh K. Gupta,et al.  Leakage aware dynamic voltage scaling for real-time embedded systems , 2004, Proceedings. 41st Design Automation Conference, 2004..

[11]  Miodrag Potkonjak,et al.  MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[12]  Miodrag Potkonjak,et al.  Power optimization of variable-voltage core-based systems , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[13]  MishraPrabhat,et al.  Dynamic Cache Reconfiguration for Soft Real-Time Systems , 2012 .

[14]  Luca Benini,et al.  A survey of design techniques for system-level dynamic power management , 2000, IEEE Trans. Very Large Scale Integr. Syst..

[15]  Nikil D. Dutt,et al.  Automatic tuning of two-level caches to embedded applications , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[16]  Isabelle Puaut Cache analysis vs static cache locking for schedulability analysis in multitasking real-time systems , 2002 .

[17]  Arun K. Somani,et al.  A reconfigurable multi-function computing cache architecture , 2000, FPGA '00.

[18]  Rolf Ernst,et al.  Scheduling analysis of real-time systems with precise modeling of cache related preemption delay , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

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

[20]  Bill Moyer,et al.  A low power unified cache architecture providing power and performance flexibility , 2000, ISLPED'00: Proceedings of the 2000 International Symposium on Low Power Electronics and Design (Cat. No.00TH8514).

[21]  Daniel Gajski,et al.  Performance-constrained hierarchical pipelining for behaviors, loops, and operations , 2001, TODE.

[22]  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.

[23]  Yudong Tan,et al.  Timing analysis for preemptive multi-tasking real-time systems with caches , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[24]  Björn Andersson,et al.  Scheduling Arbitrary-Deadline Sporadic Task Systems on Multiprocessors , 2008, 2008 Real-Time Systems Symposium.

[25]  Frank Vahid,et al.  A highly configurable cache for low energy embedded systems , 2005, TECS.

[26]  Isabelle Puaut,et al.  Scratchpad memories vs locked caches in hard real-time systems: a quantitative comparison , 2007 .

[27]  Miodrag Potkonjak,et al.  Power optimization of variable voltage core-based systems , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[28]  Karam S. Chatha,et al.  Approximation algorithms for power minimization of earliest deadline first and rate monotonic schedules , 2007, Proceedings of the 2007 international symposium on Low power electronics and design (ISLPED '07).

[29]  Simon Segars Low power design techniques for microprocessors , 2000 .

[30]  Andrew Wolfe,et al.  Software-based cache partitioning for real-time applications , 1994 .

[31]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[32]  Frank Vahid,et al.  A self-tuning cache architecture for embedded systems , 2004 .

[33]  Radu Marculescu,et al.  Energy-aware communication and task scheduling for network-on-chip architectures under real-time constraints , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[34]  Isabelle Puaut,et al.  Scratchpad memories vs locked caches in hard real-time systems: a quantitative comparison , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[35]  Lui Sha,et al.  Aperiodic task scheduling for Hard-Real-Time systems , 2006, Real-Time Systems.

[36]  Brad Calder,et al.  Discovering and Exploiting Program Phases , 2003, IEEE Micro.

[37]  Chi-Ying Tsui,et al.  Exploiting dynamic workload variation in low energy preemptive task scheduling , 2005, Design, Automation and Test in Europe.

[38]  Weixun Wang,et al.  Dynamic Reconfiguration of Two-Level Caches in Soft Real-Time Embedded Systems , 2009, 2009 IEEE Computer Society Annual Symposium on VLSI.

[39]  André C. Nácul,et al.  Dynamic voltage and cache reconfiguration for low power , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[40]  Sungpack Hong,et al.  Runtime Distribution-Aware Dynamic Voltage Scaling , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

[41]  Dongkun Shin,et al.  Low-energy intra-task voltage scheduling using static timing analysis , 2001, DAC '01.

[42]  Giorgio C. Buttazzo,et al.  HARD REAL-TIME COMPUTING SYSTEMS Predictable Scheduling Algorithms and Applications , 2007 .

[43]  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..

[44]  Frank Vahid,et al.  A self-tuning cache architecture for embedded systems , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[45]  Mehdi Modarressi,et al.  A Reconfigurable Cache Architecture for Object-Oriented Embedded Systems , 2006, 2006 Canadian Conference on Electrical and Computer Engineering.

[46]  Gang Quan,et al.  Energy efficient DVS schedule for fixed-priority real-time systems , 2007, TECS.

[47]  Antonio González,et al.  A dynamically reconfigurable cache for multithreaded processors , 2006, J. Embed. Comput..

[48]  Chong-Min Kyung,et al.  Task partitioning algorithm for intra-task dynamic voltage scaling , 2008, 2008 IEEE International Symposium on Circuits and Systems.

[49]  Massoud Pedram,et al.  Energy-Aware Task Scheduling and Dynamic Voltage Scaling in a Real-Time System , 2008, J. Low Power Electron..