Energy-Aware Scheduling of Distributed Systems
IEEE Transactions on Automation Science and Engineering
Scheduling of tasks on a multi-machine system to reduce the makespan, while satisfying the precedence constraints between the tasks, is known to be an NP-hard problem. We propose a new formulation and show that energy-aware scheduling is a generalization of the minimum makespan scheduling problem. Taking the system graph and program graph as inputs, we propose three different algorithms for energy-aware scheduling, each of them having its own strengths and limitations. The first is a genetic
... orithm (Plain GA) that searches for an energy reducing schedule. The second uses cellular automata (CA) to generate low energy schedules, while using a genetic algorithm (GA) to find good rules for the CA. The third (EAH) is a heuristic which gives preference to high-efficiency machines in allocation. We have tested our algorithms on well-known program graphs and compared our results with other state-of-the-art scheduling algorithms, which confirms the efficacy of our approach. Our work also gives insight into the time-energy trade-offs in scheduling. Note to Practitioners-In today's world of large systems and energy shortages, the need for energy efficiency in individual machines is complemented by the need for energy awareness in the use of the complete system. One important aspect of this is for proper scheduling of tasks to minimize the energy consumption in carrying out a program of tasks over a system of machines. Our work is to find an energy-aware schedule for a given system that also satisfies the precedence constraints between tasks to be performed by the system. We propose three different algorithms for energy-aware scheduling and indicate their strengths and limitations. We show that the energy-aware scheduling problem is a generalization of the minimum makespan scheduling problem. The assumptions made by us in this paper are close to practical settings, as we consider both the power required for task execution as well as the power dissipation of machines when idle. Our model is generic and can describe many distributed systems from different domains. We have validated our algorithms with simulations of systems with different numbers of machines, with some standard program graphs. Our results support the intuition that there can be energy-minimal schedules that are not time-minimal, and give scope for further work on energy-time trade-offs. Index Terms-Cellular automata (CA), distributed systems, energy-aware scheduling, genetic algorithms (GA), learning algorithms, machine learning, makespan.