Skip to main content
Log in

Designing parallel loop self-scheduling schemes using the hybrid MPI and OpenMP programming model for multi-core grid systems

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

Abstract

Loop scheduling on parallel and distributed systems has been thoroughly investigated in the past. However, none of these studies considered the multi-core architecture feature for emerging grid systems. Although there have been many studies proposed to employ the hybrid MPI and OpenMP programming model to exploit different levels of parallelism for a distributed system with multi-core computers, none of them were aimed at parallel loop self-scheduling. Therefore, this paper investigates how to employ the hybrid MPI and OpenMP model to design a parallel loop self-scheduling scheme adapted to the multi-core architecture for emerging grid systems. Three different featured applications are implemented and evaluated to demonstrate the effectiveness of the proposed scheduling approach. The experimental results show that the proposed approach outperforms the previous work for the three applications and the speedups range from 1.13 to 1.75.

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. Banicescu I, Carino RL, Pabico JP, Balasubramaniam M (2005) Overhead analysis of a dynamic load balancing library for cluster computing In: Proceedings of the 19th IEEE international parallel and distributed processing symposium, pp 122.2

  2. Boeres C, Nascimento AP, Rebello VEF Sena AC (2005) Efficient hierarchical self-scheduling for MPI applications executing in computational Grids. In: Proceedings of the 3rd international workshop on middleware for grid computing, pp 1–6

  3. Chronopoulos AT, Penmatsa S, Yu N (2002) Scalable loop self-scheduling schemes for heterogeneous clusters. In: Proceedings of the 2002 IEEE international conference on cluster computing, pp 353–359

  4. Chronopoulos AT, Penmatsa S, Xu J, Ali S (2006) Distributed loop-self-scheduling schemes for heterogeneous computer systems. Concurr Comput Pract Experience 18(7):771–785

    Article  Google Scholar 

  5. Foster I (2002) The Grid: a new infrastructure for 21st century science. Phys Today 55(2):42–47

    Article  Google Scholar 

  6. Foster I, Kesselman C (1997) Globus: a metacomputing infrastructure toolkit. Int J Supercomput Appl High Perform Comput 11(2):115–128

    Article  Google Scholar 

  7. Foster I, Kesselman C (2003) The Grid 2: blueprint for a new computing infrastructure. Morgan Kaufmann, San Mateo

    Google Scholar 

  8. Foster I, Kesselman C, Tuecke S (2001) The anatomy of the grid: enabling scalable virtual organizations. Int J Supercomput Appl High Perform Comput 15(3):200–222

    Article  Google Scholar 

  9. Herrera J, Huedo E, Montero RS, Llorente IM (2006) Loosely-coupled loop scheduling in computational grids. In: Proceedings of the 20th IEEE international parallel and distributed processing symposium, 6 pp

  10. HINT performance analyzer. http://hint.byu.edu/

  11. Hummel SF, Schonberg E, Flynn LE (1992) Factoring: a method scheme for scheduling parallel loops. Commun ACM 35(8):90–101

    Article  Google Scholar 

  12. Li H, Tandri S, Stumm M, Sevcik KC (1993) Locality and loop scheduling on NUMA multiprocessors. In: Proceedings of the 1993 international conference on parallel processing, vol. II, pp 140–147

  13. Mandelbrot BB (1988) Fractal geometry of nature. Freeman, New York

    Google Scholar 

  14. MPI. http://www.mcs.anl.gov/research/projects/mpi/

  15. MPICH-G2. http://www.hpclab.niu.edu/mpi/

  16. OpenMP. http://en.wikipedia.org/wiki/OpenMP/

  17. Polychronopoulos CD, Kuck D (1987) Guided self-scheduling: a practical scheduling scheme for parallel supercomputers. IEEE Trans Comput 36(12):1425–1439

    Article  Google Scholar 

  18. Shih W-C, Yang C-T, Tseng S-S (2007) A performance-based parallel loop scheduling on grid environments. J Supercomput 41(3):247–267

    Article  Google Scholar 

  19. Spooner DP, Jarvis SA, Cao J, Saini S, Nudd GR (2003) Local grid scheduling techniques using performance prediction. IEE Proc-Comput Digit Tech 150(2):87–96

    Article  Google Scholar 

  20. Tabirca S, Tabirca T, Yang LT (2006) A convergence study of the discrete FGDLS algorithm. IEICE Trans Inf Syst E89-D 2:673–678

    Article  Google Scholar 

  21. Tang P, Yew PC (1986) Processor self-scheduling for multiple-nested parallel loops. In: Proceedings of the 1986 international conference on parallel processing, 1986, pp 528–535

  22. Tzen TH, Ni LM (1993) Trapezoid self-scheduling: a practical scheduling scheme for parallel compilers. IEEE Trans Parallel Distrib Syst 4:87–98

    Article  Google Scholar 

  23. Wu C-C, Lai L-F, Chiu P-H (2008) Parallel loop self-scheduling for heterogeneous cluster systems with multi-core computers. In: Proceedings of Asia-pacific services computing conference, vol 1, pp 251–256

  24. Wu C-C, Lai L-F, Yang C-T, Chiu P-H (2009) Using hybrid MPI and OpenMP programming to optimize communications in parallel loop self-scheduling schemes for multicore PC clusters. J Supercomput. doi:10.1007/s11227-009-0271-z

  25. Yang C-T, Chang S-C (2004) A parallel loop self-scheduling on extremely heterogeneous PC clusters. J Inf Sci Eng 20(2):263–273

    Google Scholar 

  26. Yang C-T, Cheng K-W, Li K-C (2005) An enhanced parallel loop self-scheduling scheme for cluster environments. J Supercomput 34(3):315–335

    Article  Google Scholar 

  27. Yang C-T, Cheng K-W, Shih W-C (2007) On development of an efficient parallel loop self-scheduling for grid computing environments. Parallel Comput 33(7–8):467–487

    Article  Google Scholar 

  28. Yang C-T, Shih W-C, Tseng S-S (2008) Dynamic partitioning of loop iterations on heterogeneous PC clusters. J Supercomput 44(1):1–23

    Article  Google Scholar 

  29. Yang C-T, Chang J-H, Wu C-C (2009) Performance-based parallel loop self-scheduling on heterogeneous multi-core PC clusters. In: Proceedings of the second international conference on high performance computing and applications

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Chao-Chin Wu.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Wu, CC., Yang, CT., Lai, KC. et al. Designing parallel loop self-scheduling schemes using the hybrid MPI and OpenMP programming model for multi-core grid systems. J Supercomput 59, 42–60 (2012). https://doi.org/10.1007/s11227-010-0418-y

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-010-0418-y

Keywords

Navigation