Abstract-As the performance of modern multi-core processors increases, the energy consumption in these systems also increases significantly. Dynamic Voltage and Frequency Scaling (DVFS) is considered an efficient scheme for achieving the goal of saving energy. In this paper, we consider scheduling a set of independent aperiodic tasks, whose release times, deadlines and execution requirements are arbitrarily given, on DVFSenabled multi-core processors. Our goal is to meet the execution requirements of all the tasks, and to minimize the overall energy consumption on the processor. Instead of seeking optimal solutions with high complexity, we aim to design lightweight algorithms suitable for real-time systems, with good performances. By applying a subinterval-based method, we come up with a simple algorithm to allocate tasks' available execution times during a heavily overlapped subinterval based on their desired execution requirement during that subinterval. Based on the allocated available execution times, we further consider the final frequency setting and task scheduling, which guarantee that all tasks meet their execution requirements, and tries to minimize the overall energy consumption. Extensive simulations for various platform and task characteristics and evaluations using a practical processor's power configuration indicate that our proposed algorithm has a good performance in terms of saving processor energy, though it has low complexity. Besides, the proposed algorithm is easy to be implemented in practical systems.Index Terms-Dynamic Voltage and Frequency Scaling (DVF-S), multi-core processors, aperiodic tasks, energy-aware scheduling, subinterval approach.
I. INTRODUCTIONHigh energy consumption in modern computing systems has become an important issue, because it not only results in high electricity bills, but it also increases the requirements for the cooling system and other system components. Currently, the most significant portion of energy is still consumed by processors or processing cores. To facilitate energy-efficient design, the Dynamic Voltage and Frequency Scaling (DVFS) function is widely adopted [11], [15] in modern processors.The basic idea of the DVFS strategy is to reduce a processor's (or a core's) processing frequency, as long as tasks' predefined constraints are not violated. Since the power consumption of the processor is a polynomial of the processing frequency, generally with a degree no less than 2 [20], while the overall execution time of a task is just inversely proportional to the processing frequency, DVFS provides the possibility of minimizing energy consumption given a certain performance/timing requirement.During the past two decades, tremendous works have been done regarding energy-aware scheduling on DVFS-enabled platforms. Both circuit-level design and system scheduling have been studied in [10] and [23], respectively. It is impossible, and not necessary, to provide all of the existing research