On solving the unrelated parallel machine scheduling problem: active microrheology as a case study

Modern computational platforms are characterized by the heterogeneity of their processing elements. Additionally, there are many algorithms which can be structured as a set of procedures or tasks with different computational cost. Balancing the computational load among the available processing elements is one of the main keys for the optimal exploitation of such heterogeneous platforms. When the processing time of any procedure executed on any of the available processing elements is known, this workload-balancing problem can be modeled as the well-known scheduling on unrelated parallel machines problem. Solving this type of problems is a big challenge due to the high heterogeneity on both, the tasks and the machines. In this paper, the balancing problem has been formally defined as a global optimization problem which minimizes the makespan (parallel runtime) and a heuristic based on a Genetic Algorithm, called Genetic Scheduler (GenS), has been developed to solve it. In order to analyze the behavior of GenS for several heterogeneous clusters, an example taken from the field of statistical mechanics has been considered as a case study: an active microrheology model. Given this type of problem and a heterogeneous cluster, we seek to minimize the total runtime to extend and analyze in depth the case of study. In such context, a task consists of the simulation of a tracer particle pulled into a cubic box with smaller bath particles. The computational load depends on the total number of the bath particles. Moreover, GenS has been compared to other dynamic and static scheduling approaches. The experimental results of such a comparison show that GenS outperforms the rest of the tested alternatives achieving a better distribution of the computational workload on a heterogeneous cluster. So, the scheduling strategy developed in this paper is of potential interest for any application which requires the execution of many tasks of different duration (a priori known) on a heterogeneous cluster.

[1]  Thomas Andrew Waigh,et al.  Advances in the microrheology of complex fluids , 2016, Reports on progress in physics. Physical Society.

[2]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[3]  Pietro Cicuta,et al.  Microrheology: a review of the method and applications. , 2007, Soft matter.

[4]  Nirwan Ansari,et al.  A Genetic Algorithm for Multiprocessor Scheduling , 1994, IEEE Trans. Parallel Distributed Syst..

[5]  Rubén Ruiz,et al.  A genetic algorithm for the unrelated parallel machine scheduling problem with sequence dependent setup times , 2011, Eur. J. Oper. Res..

[6]  Hyesoon Kim,et al.  Qilin: Exploiting parallelism on heterogeneous multiprocessors with adaptive mapping , 2009, 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[7]  Tingting Wang,et al.  Load Balancing Task Scheduling Based on Genetic Algorithm in Cloud Computing , 2014, 2014 IEEE 12th International Conference on Dependable, Autonomic and Secure Computing.

[8]  Mario Vanhoucke,et al.  Hybrid tabu search and a truncated branch-and-bound for the unrelated parallel machine scheduling problem , 2015, Comput. Oper. Res..

[9]  A. Puertas,et al.  Microrheology of colloidal systems , 2014, Journal of physics. Condensed matter : an Institute of Physics journal.

[10]  Ester M. Garzón,et al.  Accelerating the problem of microrheology in colloidal systems on a GPU , 2016, The Journal of Supercomputing.

[11]  Andrew J. Page,et al.  Dynamic task scheduling using genetic algorithms for heterogeneous distributed computing , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[12]  James P. Ahrens,et al.  Scout: a data-parallel programming language for graphics processors , 2007, Parallel Comput..

[13]  C. Murray Woodside,et al.  Fast Allocation of Processes in Distributed and Parallel Systems , 1993, IEEE Trans. Parallel Distributed Syst..

[14]  Gloria Ortega López,et al.  GPU Computing to Speed-Up the Resolution of Microrheology Models , 2016, ICA3PP.

[15]  Éva Tardos,et al.  An approximation algorithm for the generalized assignment problem , 1993, Math. Program..

[16]  Jan Karel Lenstra,et al.  Approximation algorithms for scheduling unrelated parallel machines , 1987, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[17]  Quan Chen,et al.  Task Scheduling for Multi-core and Parallel Architectures , 2017, Springer Singapore.

[18]  Cédric Augonnet,et al.  StarPU: a unified platform for task scheduling on heterogeneous multicore architectures , 2011, Concurr. Comput. Pract. Exp..

[19]  Klaus Jansen,et al.  A PTAS for Scheduling Unrelated Machines of Few Different Types , 2016, SOFSEM.

[20]  Antonio Costa,et al.  Three Genetic Algorithm Approaches to the Unrelated Parallel Machine Scheduling Problem with Limited Human Resources , 2012, IJCCI.

[21]  Ester M. Garzón,et al.  Finite size effects in active microrheology in colloids , 2019, Comput. Phys. Commun..

[22]  Ivo J. B. F. Adan,et al.  A Hybrid Genetic Algorithm for Parallel Machine Scheduling at Semiconductor Back-End Production , 2018, ICAPS.

[23]  H. Hasimoto On the periodic fundamental solutions of the Stokes equations and their application to viscous flow past a cubic array of spheres , 1959, Journal of Fluid Mechanics.