Skip to main content
Log in

A runtime resolution scheme for priority boost conflict in implicit coscheduling

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

High-performance parallel and scientific applications are composed of multiple processes running on distinct CPUs that communicate frequently. Due to the synchronization needs of such applications, performance is greatly hampered if their processes are not scheduled simultaneously on the CPUs. Implicit coscheduling (ICS) is a well-known technique to address this problem in multi-programmed clusters, however, traditional ICS schemes do not incorporate steps to adequately deal with priority boost conflicts, leading to significantly degraded performance. In this paper, we propose the use of runtime difference in contention across nodes to provide more sophisticated coscheduling decisions in response to the conflicts. We also present a novel coscheduling scheme termed PROC (Process ReOrdering-based Coscheduling) that adaptively regulates the scheduling sequence of conflicting processes based on the rescheduling latency of their correspondents in remote nodes. We perform extensive simulation-based experiments using both synthetic and realistic workloads to analyze the performance of PROC compared to alternatives such as local scheduling, a widely used batch scheduling, gang scheduling, and existing ICS schemes. The results show that all ICS schemes commonly experience priority boost conflicts, and that the proposed PROC significantly outperforms other ICS alternatives (or batch scheduling) by up to 50.4% (or 72.5%) in the average job response time. This improvement is achieved by reducing wasted idle time and spinning time without sacrificing fairness.

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. Agarwal S, Choi GS, Das CR, Yoo A, Nagar S (2003) Coordinated coscheduling in clusters through a generic framework. Clust Comput (Dec):84–91

  2. Anderson TE, Culler DE, Patterson DA (1995) A case for now (networks of workstations). IEEE Micro 15(1):54–64

    Article  Google Scholar 

  3. Anglano C (2000) A comparative evaluation of implicit coscheduling strategies for networks of workstations. In: Proc of the 9th IEEE international symposium on high performance distributed computing, 2000, pp 221–228

  4. Borden NJ, Cohen D, Felderman RE, Kulawik AE, Seitz CL, Seizovic JN, Su W (1995) Myrinet: a gigabit-per-second local area network. IEEE Micro 15(1):29–36

    Article  Google Scholar 

  5. Choi GS, Kim JH, Ersoz D, Yoo A, Das CR (2004) Coscheduling in clusters: is it a viable alternative? In: Proc of the 2004 ACM/IEEE conference on supercomputing, Nov 2004.

  6. Dunning D, Regnier G, McAlpine G, Cameron D, Shubert B, Berry F, Merritt AM, Gronke E, Dodd C (1998) The virtual interface architecture. IEEE Micro 18(2):66–76

    Article  Google Scholar 

  7. Dusseau A, Arpaci R, Culler D (1996) Effective distributed scheduling of parallel workloads. In: Proc of ACM SIGMETRICS conference, May 1996, pp 25–36

  8. Etsion Y, Feitelson DG (2001) User-level communication in a system with gang scheduling. In: Proc of the international parallel and distributed processing symposium, 2001, p 58

  9. Feitelson D (2003) Metric and workload effects on computer systems evaluation. IEEE Comput 36(9):18–25

    Google Scholar 

  10. Frachtenberg E, Feitelson DG, Petrini F, Fernandez J (2005) Adaptive parallel job scheduling with flexible coscheduling. IEEE Trans Parallel Distrib Syst 16(11):1066–1077

    Article  Google Scholar 

  11. Frachtenberg E, Feitelson DG, Petrini F, Fernandez J (2003) Flexible coscheduling: mitigating load imbalance and improving utilization of heterogeneous resources. In: Proc of international parallel and distributed processing symposium, 2003, pp 625–651

  12. Franke H, Jann J, Moreira JE, Pattnaik P, Jette MA (1999) Evaluation of parallel job scheduling for ASCI blue-pacific. In: Proc of the 1999 ACM/IEEE conference on supercomputing, Nov 1999, pp 679–691

  13. Hori A, Tezuka H, Ishikawa Y (1998) Highly efficient gang scheduling implementation. In: Proc of the ACM conference on supercomputing, Nov 1998, pp 1–14

  14. Jette MA (1997) Performance characteristics of gang scheduling in multiprogrammed environments. In: Proc of the ACM/IEEE conference on supercomputing, Nov 1997, pp 1–12

  15. Kim JS, Kim KH, Jung SI, Ha SH (2003) Design and implementation of a user-level sockets layer over virtual interface architecture. Concurr Comput: Pract Exp 15(7-8):727–749

    Article  Google Scholar 

  16. Lawson B, Smirni E, Puiu D (2002) Self-adapting backfilling scheduling for parallel systems. In: Proc of international conference on parallel processing, August 2002, pp 583–592

  17. Myrinet Inc (2003) MPICH-GM software, Oct 2003. Available from http://www.myrinet.com

  18. NAS division. The NAS parallel benchmarks. Available from http://www.nas.nasa.gov/Software/NPB

  19. Nagar S, Banerjee A, Sivasubramaniam A, Das CR (1999) Alternatives to coscheduling a network of workstations. J Parallel Distrib Comput 59(2):302–327

    Article  Google Scholar 

  20. Nagar S, Banerjee A, Sivasubramaniam A, Das CR (1999) A closer look at coscheduling approaches for a network of workstations. In: Proc of ACM symposium parallel algorithms and architectures, June 1999, pp 96–105

  21. Ousterhout J (1982) Scheduling techniques for concurrent systems. In: Proc of the 3rd international conference on distributed computing systems, 1982, pp 22–30

  22. Parallel workloads archive. Available from http://www.cs.huji.ac.il/labs/parallel/workload

  23. Petrini F, Feng W (2001) Improved resource utilization with buffered coscheduling. J Parallel Algorithm Appl 16(2-3):123–144

    MATH  Google Scholar 

  24. Rencuzogullari U, Dwarkadas S (2001) Dynamic adaptation to available resources for parallel computing in an autonomous network of workstations. In: Proc of ACM SIGPLAN symposium on principles and practice of parallel programming, 2001, pp 72–81

  25. Sabin G, Kettimuthu R, Rajan A, Sadayappan P (2003) Scheduling of parallel jobs in a heterogeneous multi-site environment. In: Proc of job scheduling strategies for parallel processing, 2003, pp 87–104

  26. Schwetman HD (2001) CSIM19: a powerful tool for building system models. In: Proc of the 2001 winter simulation conference, 2001, pp 250–255

  27. Sobalvarro P, Pakin S, Weihl B, Chien AA (1998) Dynamic coscheduling on workstation clusters. In: Proc of the international parallel processing symposium, March 1998, pp 231–256

  28. SUN Microsystems Inc (1997) Solaris 2.6 Software Developer Collection. Available from http://www.sum.com

  29. Zhang Y, Franke H, Moreira JE, Sivasubramaniam A (2003) An integrated approach to parallel scheduling using gang-scheduling, backfilling, and migration. IEEE Trans Parallel Distrib Syst 14(3):236–247

    Article  Google Scholar 

  30. Zhang Y, Sivasubramaniam A (2004) ClusterSchedSim: a unifying simulation framework for cluster scheduling strategies. In: SIMULATION: transactions of the society for modeling and simulation, 2004, pp 191–206

  31. Zhang Y, Sivasubramaniam A, Moreira J, Franke H (2001) Impact of workload and system parameters on next generation cluster scheduling. IEEE Trans Parallel Distrib Syst 12(9):967–985

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jung-Lok Yu.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Yu, JL., Kim, JS. & Maeng, SR. A runtime resolution scheme for priority boost conflict in implicit coscheduling. J Supercomput 40, 1–28 (2007). https://doi.org/10.1007/s11227-006-0006-3

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-006-0006-3

Keywords

Navigation