A Tabu Search Approach to Task Scheduling on Heterogeneous Processors under Precedence Constraints

Parallel programs may be represented as a set of interrelated sequential tasks. When multiprocessors are used to execute such programs, the parallel portion of the application can be speeded up by an appropriate allocation of processors to the tasks of the application. Given a parallel application defined by a task precedence graph, the goal of task scheduling (or processor assignment) is thus the minimization of the makespan of the application. In a heterogeneous multiprocessor system, task scheduling consists of determining which tasks will be assigned to each processor, as well as the execution order of the tasks assigned to each processor. In this work, we apply the tabu search metaheuristic to the solution of the task scheduling problem on a heterogeneous multiprocessor environment under precedence constraints. The topology of the Mean Value Analysis solution package for product form queueing networks is used as the framework for performance evaluation. We show that tabu search obtains much better results, i.e., shorter completion times, improving from 20 to 30% the makespan obtained by the most appropriate algorithm previously published in the literature.

[1]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[2]  Peter J. Denning,et al.  Operating Systems Theory , 1973 .

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

[4]  Edward G. Coffman,et al.  Computer and job-shop scheduling theory , 1976 .

[5]  Ellis Horowitz,et al.  Exact and Approximate Algorithms for Scheduling Nonidentical Processors , 1976, JACM.

[6]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[7]  David S. Johnson,et al.  `` Strong '' NP-Completeness Results: Motivation, Examples, and Implications , 1978, JACM.

[8]  Stephen S. Lavenberg,et al.  Mean-Value Analysis of Closed Multichain Queuing Networks , 1980, JACM.

[9]  Jeffrey M. Jaffe,et al.  Algorithms for Scheduling Tasks on Unrelated Processors , 1981, JACM.

[10]  J. Wesley Barnes,et al.  Scheduling Jobs with Linear Delay Penalties and Sequence Dependent Setup Costs , 1981, Oper. Res..

[11]  Alan Weiss,et al.  Allocating Independent Subtasks on Parallel Processors , 1985, IEEE Transactions on Software Engineering.

[12]  Vivek Sarkar,et al.  Compile-time partitioning and scheduling of parallel programs , 1986, SIGPLAN '86.

[13]  Fred W. Glover,et al.  Future paths for integer programming and links to artificial intelligence , 1986, Comput. Oper. Res..

[14]  Alexander Thomasian,et al.  Analytic Queueing Network Models for Parallel Processing of Task Systems , 1986, IEEE Transactions on Computers.

[15]  Shikharesh Majumdar,et al.  Scheduling in multiprogrammed parallel systems , 1988, SIGMETRICS 1988.

[16]  David A. Padua,et al.  Utilizing Multidimensional Loop Parallelism on Large-Scale Parallel Processor Systems , 1989, IEEE Trans. Computers.

[17]  Vivek Sarkar,et al.  Partitioning and Scheduling Parallel Programs for Multiprocessing , 1989 .

[18]  Frank D. Anger,et al.  Scheduling Precedence Graphs in Systems with Interprocessor Communication Times , 1989, SIAM J. Comput..

[19]  Harvey J. Greenberg,et al.  New approaches for heuristic search: A bilateral linkage with artificial intelligence , 1989 .

[20]  Fred W. Glover,et al.  Tabu Search - Part I , 1989, INFORMS J. Comput..

[21]  Eugene L. Lawler,et al.  Sequencing and scheduling: algorithms and complexity , 1989 .

[22]  John N. Tsitsiklis,et al.  Parallel and distributed computation , 1989 .

[23]  J. Ramanujam,et al.  Cluster partitioning approaches to mapping parallel programs onto a hypercube , 1987, Parallel Comput..

[24]  Virgílio A. F. Almeida,et al.  Cost-performance analysis of heterogeneity in supercomputer architectures , 1990, Proceedings SUPERCOMPUTING '90.

[25]  Jacek Blazewicz,et al.  Scheduling in Computer and Manufacturing Systems , 1990 .

[26]  John Zahorjan,et al.  Processor scheduling in shared memory multiprocessors , 1990, SIGMETRICS '90.

[27]  Fred Glover,et al.  Tabu Search - Part II , 1989, INFORMS J. Comput..

[28]  Jadranka Skorin-Kapov,et al.  Tabu Search Applied to the Quadratic Assignment Problem , 1990, INFORMS J. Comput..

[29]  Fred Glover,et al.  Tabu Search: A Tutorial , 1990 .

[30]  J. Ramanujam,et al.  Task allocation onto a hypercube by recursive mincut bipartitioning , 1990, C3P.

[31]  Dipak Ghosal,et al.  Processor Scheduling in Multiprocessor Systems , 1991, ACPC.

[32]  Nadia Tawbi Parallelisation automatique : estimation des durees d'execution et allocation statique de processeurs , 1991 .

[33]  Paul Feautrier,et al.  Processor allocation and loop scheduling on multiprocessor computers , 1992, ICS '92.

[34]  Satish K. Tripathi,et al.  Processor assignment in heterogeneous parallel architectures , 1992, Proceedings Sixth International Parallel Processing Symposium.

[35]  C. Ribeiro,et al.  Clustering and clique partitioning: Simulated annealing and tabu search approaches , 1992 .

[36]  Celso C. Ribeiro,et al.  Location and sizing of offshore platforms for oil exploration , 1992 .

[37]  Thomas E. Morton,et al.  Heuristic scheduling systems : with applications to production systems and project management , 1993 .

[38]  Fred W. Glover,et al.  A user's guide to tabu search , 1993, Ann. Oper. Res..

[39]  F. Glover,et al.  In Modern Heuristic Techniques for Combinatorial Problems , 1993 .

[40]  Lixin Tao Heuristics for Mapping Parallel Computations to Heterogeneous Parallel Architectures , 1993 .

[41]  D.A. Menasce,et al.  Processor assignment in heterogeneous message passing parallel architectures , 1993, [1993] Proceedings of the Twenty-sixth Hawaii International Conference on System Sciences.