Skip to main content
Log in

Abstract

Task scheduling is an essential aspect of parallel process system. This NP-hard problem assumes fully connected homogeneous processors and ignores contention on the communication links. However, as arbitrary processor network (APN), communication contention has a strong influence on the execution time of a parallel application. This paper investigates the incorporation of contention awareness into task scheduling. The innovation is the idea of dynamically scheduling edges to links, for which we use the earliest finish communication time search algorithm based on shortest-path search method. The other novel idea proposed in this paper is scheduling priority based on recursive rank computation on heterogeneous arbitrary processor network. In the end, to reduce time complexity of algorithm, a parallel algorithm is proposed and speedup O(PPE) is achieved. The comparison study, based on both randomly generated graphs and the graphs of some real applications, shows that our scheduling algorithm significantly surpasses classic and static communication contention awareness algorithm, especially for high data transmission rate parallel application.

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.

Institutional subscriptions

References

  1. Sih G C, Lee E A. A compile-time scheduling heuristic for interconnection-constrained heterogeneous machine architectures. IEEE Trans Parallel Distrib Syst, 1993, 4 (2): 175–187

    Article  Google Scholar 

  2. Gary M R, Johnson D S. Computers and Intractability: A Guide to the Theory of NP-Completeness. San Francisco: W.H. Freeman and Co., 1979

    Google Scholar 

  3. Ahmad I, Kwok Y.-K. On exploiting task duplication in parallel program scheduling. IEEE Trans. Parallel Distrib. Systems, 1998, 9(9): 872–892

    Article  Google Scholar 

  4. Darbha S, Agrawal D P. Optimal scheduling algorithm for distributed-memory machines. IEEE Trans Parallel Distrib Syst, 1998, 9(1): 87–95

    Article  Google Scholar 

  5. Papadimitriou C H, Yannakakis M. Towards an architecture-Independent analysis of parallel algorithms. SIAM J Comput, 1990, 19(2): 322–328

    Article  MATH  MathSciNet  Google Scholar 

  6. Dhodhi M, Ahmad I, Yatama A, et al. An integrated technique for task matching and scheduling onto distributed heterogeneous computing system. J Parallel Distrib Comput, 2002, 62(9): 1338–1361

    Article  MATH  Google Scholar 

  7. Topcuoglu H, Hariri S, Wu M Y. Task scheduling algorithms for heterogeneous machines. In: Proceedings of the Heterogeneous Computing Workshop, Mexico, 1999. 3–14

  8. Radulescu A, van Gemund A J C. Low-cost task scheduling for distributed-memory machines. IEEE Trans Parallel Distrib Syst, 2002, 13(6): 648–658

    Article  Google Scholar 

  9. Park H J, Kim B K. An optimal scheduling algorithm for minimizing the computing period of cyclic synchronous tasks on multiprocessors. J Syst Software, 2001, 56(3): 213–229

    Article  Google Scholar 

  10. Kim D, Yi B G. A two-pass scheduling algorithm for parallel programs. Parallel Comput, 1994, 20(6): 869–885

    Article  MATH  MathSciNet  Google Scholar 

  11. Kwok Y -K, Ahmad I. Dynamic critical-path scheduling: an effective technique for allocating task graphs onto multiprocessors. IEEE Trans Parallel Distrib Syst, 1996, 7(5): 506–521

    Article  Google Scholar 

  12. Sinnen O, Sousa L A. Communication contention in task scheduling. TIEEE Trans Parallel Distrib Syst, 2005, 6(6): 503–515

    Article  Google Scholar 

  13. Sinnen O, Sousa, L A. List scheduling: extension for contention awareness and evaluation of node priorities for heterogeneous cluster architectures. Parallel Comput, 2004, 30(1): 81–101

    Article  Google Scholar 

  14. El-Rewini H, Lewis T G. Scheduling parallel program tasks onto arbitrary target machines. J Parallel Distrib Comput, 1990, 9(2): 138–153

    Article  Google Scholar 

  15. Iverson M, Ozuner F, Follen G. Parallelizing existing applications in a distributed heterogeneous environment. In: Proceedings of Heterogeneous Computing Workshop, 1995. 93–100

  16. Liu G Q, Poh K L, Xie M. Iterative list scheduling for heterogeneous computing. J Parallel Distrib Comput, 2005, 65(5): 654–665

    Article  MATH  Google Scholar 

  17. Topcuoglu H, Hariri S, Wu M -Y. Performance-effective and low complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst, 2002, 13(3): 260–274

    Article  Google Scholar 

  18. Macey B S, Zomaya A Y. A performance evaluation of CP list scheduling heuristics for communication intensive task graphs. In: Parallel Processing Symposium, 1998. 538–541

  19. Ahmad I, Kwok Y K. On parallelizing the multiprocessor scheduling problem. IEEE Trans Parallel Distrib Syst, 1999, 10(4): 414–432

    Article  Google Scholar 

  20. Kwok Y -K, Ahmad I. Efficient scheduling of arbitrary task graphs to multiprocessors using a parallel genetic algorithm. J Parallel Distrib Comput, 1997, 47(1): 58–77

    Article  Google Scholar 

  21. De Falco I, Del Balio R, Tarantino E. An analysis of parallel heuristics for task allocation in multicomputers. Computing: Archiv fuÈr Informatik und Numerik, 1997, 59(3): 259–275

    Article  MATH  Google Scholar 

  22. Pramanick I, Kuhl J G. An inherently parallel method for heuristic problem-solving: Part general framework. IEEE Trans Parallel Distrib Syst, 1995, 6(10): 1006–1015

    Article  Google Scholar 

  23. Cormen T H, Leiserson C E, Rivest R L. Introduction to Algorithms. Cambridge: MIT Press, 1990

    MATH  Google Scholar 

  24. Culler D E, Singh J P. Parallel Computer Architecture. San Fransisco: Morgan Kaufmann Publishers, 1999

    Google Scholar 

  25. Sinnen O, Sousa L. Exploiting unused time slots in list-scheduling considering communication contention. In: Euro-Par 2001 Parallel Processing, Lecture Notes in Computer Science. Berlin: Springer-Verlag, 2001, 2150: 166–170

    Chapter  Google Scholar 

  26. Lee B, Hurson A R, Feng T Y. A vertically layered allocation scheme for data flow systems. J Parallel Distrib Comput, 1991, 11: 175–187

    Article  Google Scholar 

  27. Ramamoorthy C V, Chandy K M, Gonzalez M J. Optimal scheduling strategies in a multiprocessor system. IEEE Trans Comput, 1972, 21: 137–146

    Article  MATH  MathSciNet  Google Scholar 

  28. Gerasoulis A, Yang T. A comparison of clustering heuristics for scheduling DAGs on multiprocessors. J Parallel Distrib Comput, 1992, 16(4): 276–291

    Article  MATH  MathSciNet  Google Scholar 

  29. Woodside C M, Monforton G G. Fast allocation of processes in distributed and parallel systems. IEEE Trans Parallel Distrib Syst, 1993, 4(2): 164–174

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to KenLi Li.

Additional information

Supported by the National Natural Science Foundation of China (Grant Nos. 90715029 and 60603053), the Cultivation Fund of the Key Scientific and Technical Innovation Project, Ministry of Edacation of China, and the Key Project of Science & Technology of Hunan Province (Grant No. 2006GK2006)

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tang, X., Li, K. & Padua, D. Communication contention in APN list scheduling algorithm. Sci. China Ser. F-Inf. Sci. 52, 59–69 (2009). https://doi.org/10.1007/s11432-009-0010-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11432-009-0010-3

Keywords

Navigation