Skip to main content
Log in

A task scheduling algorithm for arbitrarily-connected processors with awareness of link contention

  • Published:
Cluster Computing Aims and scope Submit manuscript

Abstract

In this paper, we present a new task scheduling algorithm, called Contention-Aware Scheduling (CAS) algorithm, with the objective of delivering good quality of schedules in low running-time by considering contention on links of arbitrarily-connected, heterogeneous processors. The CAS algorithm schedules tasks on processors and messages on links by considering the earliest finish time attribute with the virtual cut-through (VCT) or the store-and-forward (SAF) switching. There are three types of CAS algorithm presented in this paper, which differ in ordering the messages from immediate predecessor tasks. As part of the experimental study, the performance of the CAS algorithm is compared with two well-known APN (arbitrary processor network) scheduling algorithms. Experiments on the results of the synthetic benchmarks and the task graphs of the well-known problems clearly show that our CAS algorithm outperforms the related work with respect to performance (given in normalized schedule length) and cost (given in running time) to generate output schedules.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-completeness (W. H. Freeman and Co., 1979).

  2. J.D. Ullman, NP-complete scheduling problems, Journal of Computer and Systems Sciences 10 (1975) 384–393.

    Google Scholar 

  3. T.C. Hu, Parallel sequencing and assembly line problems, Operational Research 9(6)(1961) 841–848.

    Google Scholar 

  4. E.G. Coffman, Computer and Job-Shop Scheduling Theory (John Wiley and Sons, 1976).

  5. M. Wu and D. Gajski, Hypertool: A programming aid for message passing systems, IEEE Transactions on Parallel and Distributed Systems 1 (July 1990) 330–343.

  6. Y. Kwok and I. Ahmad, Dynamic critical-path scheduling: An effective technique for allocating task graphs to multiprocessors, IEEE Transactions on Parallel and Distributed Systems 7 (May 1996) 506–521.

  7. E.S.H. Hou, N. Ansari, and H. Ren, A genetic algorithm for multiprocessor scheduling, IEEE Transactions on Parallel and Distributed Systems 5 (February 1994) 113–120.

  8. I. Ahmad and Y. Kwok, A new approach to scheduling parallel programs using task duplication, in: Proc. of Int’l Conference on Parallel Processing, vol. II (1994) 47–51.

  9. T. Yang and A. Gerasoulis, DSC: Scheduling parallel tasks on an unbounded number of processors, IEEE Transactions on Parallel and Distributed Systems 5 (September 1994) 951–967.

  10. M. Wu, W. Shu and J. Gu, Local search for DAG scheduling and task assignment, in: Proc. of 1997 Int’l Conference on Parallel Processing (1997) pp. 174–180.

  11. R.C. Correa, A. Ferreria, and P. Rebreyend, Integrating list heuristics into genetic algorithms for multiprocessor scheduling, in: Proc. of Eight IEEE Symp. on Parallel and Distributed Processing (SPDP96) (October 1996).

  12. H. El-Rewini, H.H. Ali, and T. Lewis, Task scheduling in multiprocessor systems, IEEE Computer (December 1995) 27–37.

  13. G. Park, B. Shirazi, and J. Marquis, DFRN: A new approach for duplication based scheduling for distributed memory multiprocessor systems, in: Proc. of Int’l Conference on Parallel Processing (1997) pp. 157–166.

  14. Benjamin S. Macey, and Albert Y. Zomaya, A performance evaluation of CP list scheduling heuristics for communication intensive task graphs, in: Proceedings of the Joint 12th International Parallel Processing Symposium/9th Symposium on Parallel and Distributed Processing, March 30–April 3, Orlando, Florida, (1998) pp. 538–541.

  15. T.L. Adam, K.M. Chandy, and J.R. Dickson, A comparison of list schedules for parallel processing systems, Communication of the ACM 17 (1974) 685–689.

    Google Scholar 

  16. B. Kruatrachue, Static task scheduling and grain packing in parallel processing systems, PhD Thesis, Oregon State University, (1987).

  17. M. Iverson, F. Ozguner, and G. Follen, Parallelizing existing applications in a distributed heterogeneous environment, in: Proc. of Heterogeneous Computing Workshop (1995) pp. 93–100.

  18. M. Maheswaran and H.J. Siegel, A dynamic matching and scheduling algorithm for heterogeneous computing systems, in: Proc. of Heterogeneous Computing Workshop (1998) pp. 57–69.

  19. L. Wang, H.J. Siegel, and V.P. Roychowdhury, A genetic-algorithm-based approach for task matching and scheduling in heterogeneous computing environments, in: Proc. of Heterogeneous Computing Workshop (1996).

  20. H. Singh and A. Youssef, Mapping and scheduling heterogeneous task graphs using genetic algorithms, in: Proc. of Heterogeneous Computing Workshop (1996) pp. 86–97.

  21. H. Topcuoglu, S. Hariri, and M. Wu, Performance effective and low-complexity task scheduling for heterogeneous computing, IEEE Transactions on Parallel and Distributed Systems 13(3) (March 2002) 260–274.

    Article  Google Scholar 

  22. T. Hagras and J. Janecek, A high performance, low complexity algorithm for compile-time task scheduling in heterogeneous systems, Parallel Computing 31 (2005) 653–670.

    Article  Google Scholar 

  23. A.S. Wu, H. Yu, S. Jin, K. Lin, and G. Schiavone, An incremental genetic algorithm approach to multiprocessor scheduling, IEEE Transactions on Parallel and Distributed Systems 15 (2004) 824–834.

    Article  Google Scholar 

  24. C. Boeres and A. Lima, Hybrid task scheduling: Integrating static and dynamic heuristics, in: Proc. of the 15th Symposium on Computer Architecture and High Performance Computing (SBAC-PAD03), Sao Paulo, Brazil, 10–12 November (2003) pp. 199–206.

  25. R. Sakellariou and H. Zhao, A hybrid heuristic for dag scheduling on heterogeneous systems, in: Proc. of International Parallel and Distributed Processing Symposium (IPDPS 2004), Santa Fe, New Mexico (2004).

  26. G.Q. Liu, K.L. Poh and M. Xie, Iterative list scheduling for heterogeneous computing, Journal of Parallel and Distributed Computing 65 (2005) 654–665.

    Article  MATH  Google Scholar 

  27. G.C. Sih and E.A. Lee, A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures, IEEE Transactions on Parallel and Distributed Systems 4 (February 1993) 175–186.

  28. H. El-Rewini and T.G. Lewis, Scheduling parallel program tasks onto arbitrary target machines, Journal of Parallel and Distributed Computing 9 (1990) 138–153.

    Article  Google Scholar 

  29. Y. Kwok and I. Ahmad, Bubble scheduling: A quasi dynamic algorithm for static allocation of tasks to parallel architectures, in: Proc. of Symposium on Parallel and Distributed Processing (SPDP) (1995) pp. 36–43.

  30. Y. Kwok and I. Ahmad, Link contention-constrained scheduling and mapping of tasks and messages to a network of heterogeneous processors, Cluster Computing: The Journal of Networks, Software Tools and Applications 3 (2000) 113–124.

    Google Scholar 

  31. J.M. Orduna, F. Silla, and J. Duato, On the development of a communication-aware task mapping technique, Journal of System Architecture 50 (2004) 207–220.

    Article  Google Scholar 

  32. J. Duato, S. Yalamanchili, and L. Ni, Interconnection Networks: An Engineering Approach (Morgan Kaufmann Publishers, 2003).

  33. Y. Kwok and I. Ahmad, Benchmarking and comparison of the task graph scheduling algorithms, Journal of Parallel and Distributed Computing 59 (1999) 381–422.

    Article  MATH  Google Scholar 

  34. T. Braun, H.J. Siegel, N. Beck, L.L. Boloni, M. Maheswaran, A.I. Reuther, J.P. Robertson, M.D. Theys, B. Yao, D. Hengsen, and R.F. Freund, A comparison study of static mapping heuristics for a class of meta-tasks on heterogeneous computing systems, in: Proc. of Heterogeneous Computing Workshop (1999) pp. 15–29.

  35. M. Wu and D. Gajski, Hypertool: A programming aid for message passing systems, IEEE Transactions on Parallel and Distributed Systems 1 (July 1990) 330–343.

  36. M. Cosnard, M. Marrakchi, Y. Robert, and D. Trystram, Parallel Gaussian elimination on an MIMD computer, Parallel Computing, 6 (1988) 275–295.

    Article  MATH  MathSciNet  Google Scholar 

  37. Y. Chung and S. Ranka, Applications and performance analysis of a compile-time optimization approach for list scheduling algorithms on distributed memory multiprocessors, in: Proc. of Supercomputing (November 1992) pp. 512–521.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Haluk Rahmi Topcuoglu.

Additional information

Ali Fuat Alkaya received the B.Sc. degree in mathematics from Koc University, Istanbul, Turkey in 1998, and the M.Sc. degree in computer engineering from Marmara University, Istanbul, Turkey in 2002. He is currently a Ph.D. student in engineering management department at the same university. His research interests include task scheduling and analysis of algorithms.

Haluk Rahmi Topcuoglu received the B.Sc. and M.Sc. degrees in computer engineering from Bogazici University, Istanbul, Turkey, in 1991 and 1993, respectively. He received the Ph.D. degree in computer science from Syracuse University in 1999. He has been on the faculty at Marmara University, Istanbul, Turkey since Fall 1999, where he is currently an Associate Professor in computer engineering department. His main research interests are task scheduling and mapping in parallel and distributed systems; parallel processing; evolutionary algorithms and their applicability for stationary and dynamic environments. He is a member of the ACM, the IEEE, and the IEEE Computer Society.

e-mail: haluk@eng.marmara.edu.tr

e-mail: falkaya@eng.marmara.edu.tr

Rights and permissions

Reprints and permissions

About this article

Cite this article

Alkaya, A.F., Topcuoglu, H.R. A task scheduling algorithm for arbitrarily-connected processors with awareness of link contention. Cluster Comput 9, 417–431 (2006). https://doi.org/10.1007/s10586-006-0010-7

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10586-006-0010-7

Keywords

Navigation