سند علمی

Dynamic Voltage Scaling for Energy-Constrained Real-Time Systems

چکیده

The problem of reducing energy consumption is dominating the design of several realtime systems, from battery-operated embedded devices to large clusters and server farms. These systems are typically designed to handle peak loads in order to guarantee the timely execution of those computational activities that must meet predefined timing constraints. However, peak load conditions rarely happen in practice, and systems are underutilized most of the time. Modern microprocessors allow to balance computational speed versus energy consumption by dynamically changing operating voltage and frequency. This technique is called Dynamic Voltage Scaling (DVS). On real-time systems, however, if this technique is not used properly, some important task may miss its timing constraints. The goal of the operating system scheduler becomes, thus, to select not only the task to be scheduled, but also the processor operating frequency in order to reduce the energy consumption while meeting real-time constraints. This thesis is the result of three years of research on the Resource Reservation and Energy-Aware Scheduling topics. The main contributions of this thesis can be summarized as follows. We study the problem of energy minimization from an analytical point of view and we propose a novel result in the real-time literature which integrates the concept of probabilistic execution time within the framework of energy minimization. In particular, we find the optimal value of the instant of frequency transition and of the speed assignment in a two-speed scheme where probabilistic information about task execution times is known. Unlike similar results presented in the literature so far, the optimal values are found using a very general model for the processor that accounts for the idle power and for both the time and the energy overheads due to voltage/frequency transition. This thesis also includes a study about the Resource Reservation technique [104]. In particular, we investigate some anomalies in the schedule generated by the CBS [6] and GRUB [76, 75, 77] algorithms and we propose a novel algorithm, called HGRUB [11], which maintains the same features of CBS and GRUB but it is not affected by the problems described. Finally, we develop a novel energy-aware scheduling algorithm called GRUB-PA which, unlike most algorithms proposed in the literature, allows to reduce energy consumption on real-time systems consisting of any kind of task — i.e., hard and soft, periodic, sporadic and even aperiodic tasks. The effectiveness of the algorithm is validated through the formal proof of its main properties and through a series of comparisons with the state of the art of energy-aware scheduling algorithms using an Open Source simulator. Last but not least, we describe a working implementation of the GRUB-PA algorithm in a real test-bed running the Linux operating system and we present a series of experiments to show that the algorithm actually reduce the energy consumption of the system.

اسناد مشابه