Abstract

We investigate the problem of partitioning the vertices of a directed acyclic graph into a given number of parts. The objective function is to minimize the number or the total weight of the edges having end points in different parts, which is also known as the edge cut. The standard load balancing constraint of having an equitable partition of the vertices among the parts should be met. Furthermore, the partition is required to be acyclic; i.e., the interpart edges between the vertices from different parts should preserve an acyclic dependency structure among the parts. In this work, we adopt the multilevel approach with coarsening, initial partitioning, and refinement phases for acyclic partitioning of directed acyclic graphs. We focus on two-way partitioning (sometimes called bisection), as this scheme can be used in a recursive way for multiway partitioning. To ensure the acyclicity of the partition at all times, we propose novel and efficient coarsening and refinement heuristics. The quality of the computed acyclic partitions is assessed by computing the edge cut. We also propose effective ways to use the standard undirected graph partitioning methods in our multilevel scheme. We perform a large set of experiments on a dataset consisting of (i) graphs coming from an application and (ii) some others corresponding to matrices from a public collection. We report significant improvements compared to the current state of the art.

Keywords

  1. directed graph
  2. acyclic partitioning
  3. multilevel partitioning

MSC codes

  1. 05C70
  2. 05C85
  3. 68R10
  4. 68W05

Get full access to this article

View all available purchase options and get full access to this article.

References

1.
K. Agrawal, J. T. Fineman, J. Krage, C. E. Leiserson, and S. Toledo, Cache-conscious scheduling of streaming applications, in Proceedings of the Twenty-Fourth Annual ACM Symposium on Parallelism in Algorithms and Architectures, SPAA'12, 2012, pp. 236--245.
2.
T. N. Bui and C. Jones, A heuristic for reducing fill-in in sparse matrix factorization, in Proceedings of the Sixth SIAM Conference on Parallel Processing for Scientific Computing, SIAM, Philadelphia, 1993, pp. 445--452.
3.
Ü. V. Çatalyürek and C. Aykanat, PaToH: A Multilevel Hypergraph Partitioning Tool, Version \textup3.0, Department of Computer Engineering, Bilkent University, Ankara, Turkey, 1999; available online from http://cc.gatech.edu/ umit/software.html.
4.
T. F. Coleman and W. Xu, Parallelism in structured Newton computations, in Parallel Computing: Architectures, Algorithms and Applications, ParCo'07, Forschungszentrum Jülich and RWTH Aachen University, Jülich and Aachen, Germany, 2007, pp. 295--302.
5.
T. F. Coleman and W. Xu, Fast (structured) Newton computations, SIAM J. Sci. Comput., 31 (2008), pp. 1175--1191, https://doi.org/10.1137/070701005.
6.
T. F. Coleman and W. Xu, Automatic Differentiation in MATLAB Using ADMAT with Applications, SIAM, Philadelphia, 2016, https://doi.org/10.1137/1.9781611974362.
7.
J. Cong, Z. Li, and R. Bagrodia, Acyclic multi-way partitioning of Boolean networks, in Proceedings of the 31st ACM/IEEE Design Automation Conference, DAC'94, 1994, pp. 670--675.
8.
T. A. Davis and Y. Hu, The University of Florida sparse matrix collection, ACM Trans. Math. Software, 38 (2011), 1.
9.
E. D. Dolan and J. J. Moré, Benchmarking optimization software with performance profiles, Math. Program., 91 (2002), pp. 201--213.
10.
V. Elango, F. Rastello, L.-N. Pouchet, J. Ramanujam, and P. Sadayappan, On characterizing the data access complexity of programs, in Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 567--580.
11.
N. Fauzia, V. Elango, M. Ravishankar, J. Ramanujam, F. Rastello, A. Rountev, L.-N. Pouchet, and P. Sadayappan, Beyond reuse distance analysis: Dynamic analysis for characterization of data locality potential, ACM Trans. Archit. Code Optim., 10 (2013), 53.
12.
C. M. Fiduccia and R. M. Mattheyses, A linear-time heuristic for improving network partitions, in Proceedings of the 19th ACM/IEEE Design Automation Conference, DAC'82, 1982, pp. 175--181.
13.
M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman, New York, 1979.
14.
B. Hendrickson and R. Leland, The Chaco User's Guide, Version 1.0, Tech. Report SAND93--2339, Sandia National Laboratories, Albuquerque, NM, 1993.
15.
J. Herrmann, J. Kho, B. Uçar, K. Kaya, and Ü. V. Çatalyürek, Acyclic partitioning of large directed acyclic graphs, in Proceedings of the 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, CCGRID'17, 2017, pp. 371--380.
16.
G. Karypis and V. Kumar, MeTiS: A Software Package for Partitioning Unstructured Graphs, Partitioning Meshes, and Computing Fill-Reducing Orderings of Sparse Matrices Version 4.0, Department of Computer Science and Engineering, Army HPC Research Center, University of Minnesota, Minneapolis, MN, 1998.
17.
B. W. Kernighan, Optimal sequential partitions of graphs, J. Assoc. Comput. Mach., 18 (1971), pp. 34--40.
18.
B. W. Kernighan and S. Lin, An efficient heuristic procedure for partitioning graphs, Bell Syst. Tech. J., 49 (1970), pp. 291--307.
19.
M. R. B. Kristensen, S. A. F. Lund, T. Blum, and J. Avery, Fusion of parallel array operations, in Proceedings of the 2016 ACM International Conference on Parallel Architectures and Compilation, 2016, pp. 71--85.
20.
M. R. B. Kristensen, S. A. F. Lund, T. Blum, K. Skovhede, and B. Vinter, Bohrium: A virtual machine approach to portable parallelism, in Proceedings of the IEEE International Parallel & Distributed Processing Symposium Workshops, IPDPSW'14, 2014, pp. 312--321.
21.
O. Moreira, M. Popp, and C. Schulz, Graph partitioning with acyclicity constraints, in 16th International Symposium on Experimental Algorithms, Schloss Dagstuhl--Leibniz-Zentrum für Informatik, Wadern, Gernany, 2017.
22.
O. Moreira, M. Popp, and C. Schulz, Evolutionary multi-level acyclic graph partitioning, in Proceedings of the ACM Genetic and Evolutionary Computation Conference, GECCO'18, 2018, pp. 332--339.
23.
J. Nossack and E. Pesch, A branch-and-bound algorithm for the acyclic partitioning problem, Comput. Oper. Res., 41 (2014), pp. 174--184.
24.
C. H. Papadimitriou and K. Steiglitz, Combinatorial Optimization: Algorithms and Complexity, Dover, New York, 1998.
25.
F. Pellegrini, SCOTCH 5.1 User's Guide, Laboratoire Bordelais de Recherche en Informatique (LaBRI), Talence, France, 2008.
26.
L.-N. Pouchet, PolyBench/C: The Polyhedral Benchmark Suite, http://web.cse.ohio-state.edu/~pouchet/software/polybench/, 2012.
27.
P. Sanders and C. Schulz, Engineering multilevel graph partitioning algorithms, in Algorithms---ESA 2011, Springer, Berlin, Heidelberg, pp. 469--480.
28.
C. Walshaw, Multilevel refinement for combinatorial optimisation problems, Ann. Oper. Res., 131 (2004), pp. 325--372.
29.
E. S. H. Wong, E. F. Y. Young, and W. K. Mak, Clustering based acyclic multi-way partitioning, in Proceedings of the 13th ACM Great Lakes Symposium on VLSI, GLSVLSI '03, 2003, pp. 203--206.

Information & Authors

Information

Published In

cover image SIAM Journal on Scientific Computing
SIAM Journal on Scientific Computing
Pages: A2117 - A2145
ISSN (online): 1095-7197

History

Submitted: 23 March 2018
Accepted: 3 April 2019
Published online: 3 July 2019

Keywords

  1. directed graph
  2. acyclic partitioning
  3. multilevel partitioning

MSC codes

  1. 05C70
  2. 05C85
  3. 68R10
  4. 68W05

Authors

Affiliations

Ümit V. Çatalyürek

Metrics & Citations

Metrics

Citations

If you have the appropriate software installed, you can download article citation data to the citation manager of your choice. Simply select your manager software from the list below and click Download.

Cited By

View Options

View options

PDF

View PDF

Media

Figures

Other

Tables

Share

Share

Copy the content Link

Share with email

Email a colleague

Share on social media