A Model for Reconfiguration of Multi-Modal Real-Time Systems under Energy Constraints ıad Nassiffe, Eduardo Camponogara Depart. of Automation and Systems Engineering (DAS) Federal University of Santa Catarina (UFSC) Florian´ opolis, SC, Brazil Email: riad@das.ufsc.br, camponog@das.ufsc.br George Lima Depart. of Computer Science (DCC) Federal University of Bahia (UFBA) Salvador, BA, Brazil Email: gmlima@ufba.br Abstract—The problem of maximizing quality of service (QoS) of real-time systems subject to both schedulability and energy constraints is addressed. A discrete system consisting of tasks with multiple operating modes, and which can be executed by the processor at different frequency/voltage levels, is considered. Although the system reconfiguration scheme assumes the earliest deadline first (EDF) policy and soft real- time tasks, it can be extended to other scheduling policies and handle hard real-time tasks. The described solution is suitable for adaptive real-time embedded systems which require energy savings associated to QoS. Despite being NP-Hard, the reconfiguration problem can be solved with a mixed-integer linear-programing solver sufficiently fast. Keywords-Adaptive real-time systems, real-time scheduling, dynamic power management I. I NTRODUCTION The computing power of real-time embedded systems has grown considerably in the past few years. For example, nowadays mobile phones have become more like hand held computers, with several multimedia-like tools capable of executing 3D graphical applications, such as NVIDIA embedded processor Tegra APX Series. This trend can be noticed in several other devices, including sensors, smart cameras, or autonomous robots. Since such devices are often powered by batteries, there must be mechanisms to provide energy-savings. The usual approach to dealing with energy-savings in real- time embedded systems is to adapt scheduling algorithms so that it is possible to take advantage of idle processing time to reduce processor voltage/frequency. In other words, the goal is to minimize energy consumption subject to system schedulability. This approach may not suffice when quality of service (QoS) guarantees must be ensured since energy savings may compromise QoS beyond what is de- sired. Indeed, as reported by Rusu et al. [1], [2], there are applications that require maximizing application QoS subject to both schedulability and energy constraints, which is the problem we address in this paper. This work was supported in part by CNPq and CAPES/PROCAD. Another common requirement of new real-time embedded systems is the need of dynamic adjustment due to external sensory data or low-level architectural features, which has been recently pointed out [3]. In particular, reconfigurable systems can be structured as having different modes of operation. For example, the computer vision subsystem of a robot may experience different operating modes due to environment changes. Light conditions, obstacles, vision angle, modifications in the robot goals during its lifetime, and other unpredictable environmental characteristics may be modeled by different operating modes. In this context, support for switching from one operating mode to another is needed at the scheduling level. In this paper we describe a mechanism capable of dy- namically reconfiguring multi-mode applications consider- ing both schedulability and energy constraints. It is assumed that there may be one or more operating modes associated to each task in the system. Each mode in turn is associated to a benefit value, which represents the corresponding QoS level defined by application designers. The goal is to determine at run-time which configuration of the system gives the maximum aggregate benefit value subject to schedulability and energy constraints. Reconfigurable systems with differ- ent modes can be found embedded in systems like robots, cellular phones and airplanes where task priority changes according to the prevailing conditions. In a robot vision system for instance, the environment conditions like light and obstacles may require the system to operate in different modes [4], [5]. The remainder of this paper is structured as follows. Related work is summarized in Section II. The model for energy consumption considered in this work and the technical notation are presented in Section III. The proposed model is described in Section IV and evaluated by numerical analysis in Section V. Conclusions are drawn in Section VI. II. RELATED WORK Dynamic Voltage Scaling (DVS) is an important and commonly used mechanism to provide energy savings in computer systems. It works by scaling down the processor 2011 Brazilian Symposium on Computing System Engineering 978-0-7695-4641-4/11 $26.00 © 2011 IEEE DOI 10.1109/SBESC.2011.9 130 2011 Brazilian Symposium on Computing System Engineering 978-0-7695-4641-4/11 $26.00 © 2011 IEEE DOI 10.1109/SBESC.2011.9 130 2011 Brazilian Symposium on Computing System Engineering 978-0-7695-4641-4/11 $26.00 © 2011 IEEE DOI 10.1109/SBESC.2011.9 130 2011 Brazilian Symposium on Computing System Engineering 978-0-7695-4641-4/11 $26.00 © 2011 IEEE DOI 10.1109/SBESC.2011.9 127