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.
Similar content being viewed by others
References
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
Baker RS, Koch KR (1998) An S n algorithm for the massively parallel CM-200 computer. Nucl Sci Eng 128:312–320
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
Bey J, Downwind GW (1997) Numbering: a robust multigrid method for convection diffusion problems on unstructured grids. Appl Numer Math 23(1):177–192
Boctor F (1990) Some efficient multi-heuristic procedures for resource-constrained project scheduling. Eur J Oper Res 49:3–13
Cooper D (1976) Heuristics for scheduling resource-constrained projects: an experimental investigation. Manag Sci 22(11):1186–1194
Davis E, Patterson J (1975) A comparison of heuristic and optimum solutions in resource-constrained project scheduling. Manag Sci 21:944–955
Drexl A (1991) Scheduling of project networks by job assignment. Manag Sci 37(12):1590–1602
Gross JL, Yellen J (eds) (2003) Handbook of graph theory. Series: discrete mathematics and its applications, vol 25. CRC Press, Boca Raton
Gridgen (2012) User’s manual for version 15. http://www.pointwise.com/ gridgen
Hackbush W, Probst T (1997) Downwind Gauss–Seidel smoothing for convection dominated problems. Numer Linear Algebra Appl 4:85–102
Hackbush W, Wittum G (eds) (1993) Incomplete decompositions (ILU)—algorithms, theory and applications. Notes on numerical fluid mechanics, vol 41. Vieweg, Wiesbaden
Han H, Ilin VP, Kellogg RB, Yuan W (1992) Analysis of flow directed iterations. J Comput Math 10(1):57–76
Hendrickson B, Leland R (1994) The Chaco user’s guide: version 2.0. Technical Report, SAND94-2692, Sandia National Laboratories, Albuquerque, NM
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
Kolisch R, Hartmann E (2006) Experimental investigation of heuristics for resource-constrained project scheduling: an update. Eur J Oper Res 174(1):23–37
Kolisch R (1995) Project scheduling under resource constraints—efficient heuristics for several problem classes. Physica. Springer, Heidelberg
Jørgen BJ, Gregory G (2001) Digraphs: theory, algorithms and applications. Springer, London
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
Lewis EE, Miller WF (1984) Computational methods of neutron transport. Wiley, New York
Li KY, Willis RJ (1992) An iterative scheduling technique for resource-constrained project scheduling. Eur J Oper Res 56:370–379
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)
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
Gropp W, Lusk E, Skjellum A (1999) Using MPI: portable parallel programming with the message-passing interface, 2nd edn. MIT Press, Cambridge
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
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
Pautz SD (2002) An algorithm for parallel S n sweeps on unstructured meshes. Nucl Sci Eng 140:111–136
Pautz SD, Pandya T, Adams ML (2011) Scalable parallel prefix solvers for discrete ordinates transport. Nucl Sci Eng 169:245–261
Plimpton S, Hendrickson B, Burns S, McLendon W (2000) Parallel algorithms for radiation transport on unstructured grids. In: Proceeding of SuperComputing’2000
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
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
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
Mo Z, Fu L (2004) Parallel flux sweep algorithm for neutron transport on unstructured grid. J Supercomput 30(1):5–17
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
Corresponding author
Rights 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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-013-1022-8