Skip to main content
Log in

A new parallel algorithm for vertex priorities of data flow acyclic digraphs

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

Abstract

Data flow acyclic directed graphs (digraph) are widely used to describe the data dependency of mesh-based scientific computing. The parallel execution of such digraphs can approximately depict the flowchart of parallel computing. During the period of parallel execution, vertex priorities are key performance factors. This paper firstly takes the distributed digraph and its resource-constrained parallel scheduling as the vertex priorities model, and then presents a new parallel algorithm for the solution of vertex priorities using the well-known technique of forward–backward iterations. Especially, in each iteration, a more efficient vertex ranking strategy is proposed. In the case of simple digraphs, both theoretical analysis and benchmarks show that the vertex priorities produced by such an algorithm will make the digraph scheduling time converge non-increasingly with the number of iterations. In other cases of non-simple digraphs, benchmarks also show that the new algorithm is superior to many traditional approaches. Embedding the new algorithm into the heuristic framework for the parallel sweeping solution of neutron transport applications, the new vertex priorities improve the performance by 20 % or so while the number of processors scales up from 32 to 2048.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

References

  1. Alvarez-Valdés R, Tamarit JM (1989) Heuristic algorithms for resource-constrained project scheduling: a review and an empirical analysis. In: Advances in project scheduling. Elsevier, Amsterdam, pp 113–134

    Google Scholar 

  2. Baker RS, Koch KR (1998) An S n algorithm for the massively parallel CM-200 computer. Nucl Sci Eng 128:312–320

    Article  Google Scholar 

  3. Bosilca G, Bouteiller A, Danalis A, Herault T, Lemarinier P, Dongarra J (2010) GAGuE: a generic distributed DAG engine for high performance computing. Innovative Computing Laboratory. Technical Report, ICL-UT-10-01, April 11

  4. Bey J, Downwind GW (1997) Numbering: a robust multigrid method for convection diffusion problems on unstructured grids. Appl Numer Math 23(1):177–192

    Article  MATH  MathSciNet  Google Scholar 

  5. Boctor F (1990) Some efficient multi-heuristic procedures for resource-constrained project scheduling. Eur J Oper Res 49:3–13

    Article  Google Scholar 

  6. Cooper D (1976) Heuristics for scheduling resource-constrained projects: an experimental investigation. Manag Sci 22(11):1186–1194

    Article  MATH  Google Scholar 

  7. Davis E, Patterson J (1975) A comparison of heuristic and optimum solutions in resource-constrained project scheduling. Manag Sci 21:944–955

    Article  Google Scholar 

  8. Drexl A (1991) Scheduling of project networks by job assignment. Manag Sci 37(12):1590–1602

    Article  MATH  Google Scholar 

  9. Gross JL, Yellen J (eds) (2003) Handbook of graph theory. Series: discrete mathematics and its applications, vol 25. CRC Press, Boca Raton

    Google Scholar 

  10. Gridgen (2012) User’s manual for version 15. http://www.pointwise.com/ gridgen

  11. Hackbush W, Probst T (1997) Downwind Gauss–Seidel smoothing for convection dominated problems. Numer Linear Algebra Appl 4:85–102

    Article  MathSciNet  Google Scholar 

  12. Hackbush W, Wittum G (eds) (1993) Incomplete decompositions (ILU)—algorithms, theory and applications. Notes on numerical fluid mechanics, vol 41. Vieweg, Wiesbaden

    Google Scholar 

  13. Han H, Ilin VP, Kellogg RB, Yuan W (1992) Analysis of flow directed iterations. J Comput Math 10(1):57–76

    MATH  MathSciNet  Google Scholar 

  14. Hendrickson B, Leland R (1994) The Chaco user’s guide: version 2.0. Technical Report, SAND94-2692, Sandia National Laboratories, Albuquerque, NM

  15. Kolisch R, Hartmann S (1999) Heuristic algorithms for solving the resource-constrained project scheduling problem: classification and computational analysis. In: Weglarz J (ed) Project scheduling—recent models, algorithms and applications. Kluwer Academic, Boston, pp 147–178

    Google Scholar 

  16. Kolisch R, Hartmann E (2006) Experimental investigation of heuristics for resource-constrained project scheduling: an update. Eur J Oper Res 174(1):23–37

    Article  MATH  Google Scholar 

  17. Kolisch R (1995) Project scheduling under resource constraints—efficient heuristics for several problem classes. Physica. Springer, Heidelberg

    Book  Google Scholar 

  18. Jørgen BJ, Gregory G (2001) Digraphs: theory, algorithms and applications. Springer, London

    Google Scholar 

  19. Koch KR, Baker RS, Alcouffe RE, Baker RS, Alcouffe RE (1997) Parallel 3-d S n performance for MPI on cray-T3D. In: Proc joint intl conference on mathematics methods and supercomputing for nuclear applications, vol 1, pp 377–393

    Google Scholar 

  20. Lewis EE, Miller WF (1984) Computational methods of neutron transport. Wiley, New York

    Google Scholar 

  21. Li KY, Willis RJ (1992) An iterative scheduling technique for resource-constrained project scheduling. Eur J Oper Res 56:370–379

    Article  MATH  Google Scholar 

  22. Meng Q, Luitjens J, Berzins M (2010) Dynamic task scheduling for the Uintah framework. In: Proceedings of the 3rd IEEE workshop on many-task computing on grids and supercomputers (MATAGS10)

    Google Scholar 

  23. Meng Q, Berzins M, Schmidt J (2011) Using hybrid parallelism to improve memory use in the Uintah framework. In: TeraGrid’11, Solt Lake City, Utah, USA, 18–21 July

    Google Scholar 

  24. Gropp W, Lusk E, Skjellum A (1999) Using MPI: portable parallel programming with the message-passing interface, 2nd edn. MIT Press, Cambridge

    Google Scholar 

  25. Notz PK, Pawlowski RP, Sutherland JC (2012) Graph-based software design for managing complexity and enabling concurrency in multiphysics PDE software. ACM Trans Math Software 39(3):1

    Article  MathSciNet  Google Scholar 

  26. Ozdamar L, Ulusoy G (1996) An iterative local constraint based analysis for solving the resource constrained project scheduling problem. J Oper Manag 14(3):193–208

    Article  Google Scholar 

  27. Pautz SD (2002) An algorithm for parallel S n sweeps on unstructured meshes. Nucl Sci Eng 140:111–136

    Article  Google Scholar 

  28. Pautz SD, Pandya T, Adams ML (2011) Scalable parallel prefix solvers for discrete ordinates transport. Nucl Sci Eng 169:245–261

    Google Scholar 

  29. Plimpton S, Hendrickson B, Burns S, McLendon W (2000) Parallel algorithms for radiation transport on unstructured grids. In: Proceeding of SuperComputing’2000

    Google Scholar 

  30. Thomas P, Salhi S (1997) An investigation into the relationship of heuristic performance with network-resource characteristics. J Oper Res Soc 48(1):34–43

    MATH  Google Scholar 

  31. Yang X, Liao X, Lu K, Hu Q, Song J, Su J (2011) The TianHe-1A supercomputer: its hardware and software. J Comput Sci Technol 26(3):344–351

    Article  Google Scholar 

  32. Mo Z, Zhang A, Wittum G (2009) Scalable heuristic algorithms for the parallel execution of data flow acyclic digraphs. SIAM J Sci Comput 31(5):3626–3642

    Article  MATH  MathSciNet  Google Scholar 

  33. Mo Z, Fu L (2004) Parallel flux sweep algorithm for neutron transport on unstructured grid. J Supercomput 30(1):5–17

    Article  MATH  Google Scholar 

Download references

Acknowledgements

This work is under the auspices of National Science Foundation (Nos. 61033009, 60903006), National Basic Key Research Special Fund (No. 2011CB309702) and National High Technology Research and Development Program of China (2010AA012303).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zeyao Mo.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Mo, Z., Zhang, A. & Yang, Z. A new parallel algorithm for vertex priorities of data flow acyclic digraphs. J Supercomput 68, 49–64 (2014). https://doi.org/10.1007/s11227-013-1022-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-013-1022-8

Keywords

Navigation