An energy-aware scheduling heuristic for distributed systems using non-cooperative games

Main concerns for scheduling policies of large-scale distributed computing systems are performance, scalability and energy efficiency. In this paper, we propose a multi-objective, batch-mode scheduling algorithm that manages tasks and resources in such systems using non-cooperative local games. The scheduling problem is modeled by profiling the various tasks and their dependencies. A set of independent, high-priority root tasks are identified as players in our game model. A group layout is given to the nodes in the distributed system based on geographic proximity. Each group plays non-cooperative games simultaneously to compute energy-aware Nash equilibrium schedules for the root tasks (step 1). A figure of merit called health is defined for each node based on its load, voltage and temperature. For each player i.e. task, the payoff for choosing a node is calculated based on its health and processing time for task on that node. Based on turnaround time of a Nash equilibrium schedule and rate of change in health of the associated group, another figure of merit called rate is calculated per group. Root tasks are allocated to group with maximum rate (step 2). Limits are specified on rate metric for optimal load balancing and energy conservation in the distributed system. Simulation results explain benefits of our algorithm by comparing our results with greedy approach and a heuristic based on cooperative games from recent literature. Our algorithm shows up to 37% improvement in health and 10-14% improvement in turnaround time.

[1]  Andrew McLennan,et al.  Gambit: Software Tools for Game Theory , 2006 .

[2]  Thomas L. Casavant,et al.  A Taxonomy of Scheduling in General-Purpose Distributed Computing Systems , 1988, IEEE Trans. Software Eng..

[3]  Albert Y. Zomaya,et al.  Cooperative power-aware scheduling in grid computing environments , 2010, J. Parallel Distributed Comput..

[4]  Michael J. Flynn,et al.  Very high-speed computing systems , 1966 .

[5]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[6]  Robert Wilson,et al.  Computing Nash equilibria by iterated polymatrix approximation , 2004 .

[7]  Mohammad Reza Meybodi,et al.  An Efficient Scheduling Method for Grid Systems Based on a Hierarchical Stochastic Petri Net , 2013, J. Comput. Sci. Eng..

[8]  Ishfaq Ahmad,et al.  Optimizing performance and energy in computational grids using non-cooperative game theory , 2010, International Conference on Green Computing.

[9]  Pascal Bouvry,et al.  Intelligent Decision Systems in Large-Scale Distributed Environments , 2011, Studies in Computational Intelligence.

[10]  Ishfaq Ahmad,et al.  A Cooperative Game Theoretical Technique for Joint Optimization of Energy Consumption and Response Time in Computational Grids , 2009, IEEE Transactions on Parallel and Distributed Systems.

[11]  K. Mani Chandy,et al.  A comparison of list schedules for parallel processing systems , 1974, Commun. ACM.

[12]  Hao Shen,et al.  Learning based DVFS for simultaneous temperature, performance and energy management , 2012, Thirteenth International Symposium on Quality Electronic Design (ISQED).

[13]  Fatos Xhafa,et al.  Genetic Algorithms for Energy-Aware Scheduling in Computational Grids , 2011, 2011 International Conference on P2P, Parallel, Grid, Cloud and Internet Computing.

[14]  Jemal H. Abawajy,et al.  Job Scheduling Policy for High Throughput Grid Computing , 2005, ICA3PP.

[15]  Samee Ullah Khan,et al.  Data Scheduling in Data Grids and Data Centers: A Short Taxonomy of Problems and Intelligent Resolution Techniques , 2013, Trans. Comput. Collect. Intell..

[16]  Pascal Bouvry,et al.  Energy Efficient Scheduling in Heterogeneous Systems with a Parallel Multiobjective Local Search , 2013, Comput. Informatics.

[17]  Juan Li,et al.  Comparison and analysis of eight scheduling heuristics for the optimization of energy consumption and makespan in large-scale distributed systems , 2010, The Journal of Supercomputing.

[18]  Albert Y. Zomaya,et al.  Survey on Grid Resource Allocation Mechanisms , 2014, Journal of Grid Computing.

[19]  El-Ghazali Talbi,et al.  Parallel Evolutionary Algorithms for Energy Aware Scheduling , 2011, Intelligent Decision Systems in Large-Scale Distributed Environments.

[20]  Marco Mililotti,et al.  Scheduling in a grid computing environment using genetic algorithms , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.