Optimally bipartitioning sparse matrices with reordering and parallelization

A good task‐to‐processor assignment is crucial for parallel efficiency since the communication between the tasks is usually the main bottleneck for scalability. A fundamental approach to solve this problem is modeling the tasks as a hypergraph where the pins correspond to the tasks and the nets represent the communication among them. The vertices in this hypergraph is partitioned into a number of parts, which correspond to processors, in a way that the total number of vertices for each part is balanced and the amount of edges having endpoints in different parts is minimized. Sparse matrix‐vector multiplication is an extensively used kernel in many applications. Recently, a novel, purely combinatorial branch‐and‐bound–based approach has been proposed for sparse‐matrix bipartitioning which can handle hypergraphs that cannot be optimally partitioned by using existing methods due to the problem's complexity. Our work extends the previous study with three ideas. We use 1) matrix ordering techniques to use more information in the earlier branches of the tree, 2) a machine learning approach to choose an ordering based on the matrix features, and 3) a parallelization technique to search an optimal bipartitioning. As our experiments show, these techniques make the bipartitioning process significantly faster.

[1]  Teodor Gabriel Crainic,et al.  Parallel Branch‐and‐Bound Algorithms , 2006 .

[2]  Rob H. Bisseling,et al.  A Medium-Grain Method for Fast 2D Bipartitioning of Sparse Matrices , 2014, 2014 IEEE 28th International Parallel and Distributed Processing Symposium.

[3]  Ümit V. Çatalyürek,et al.  Hypergraph-Partitioning-Based Decomposition for Parallel Sparse-Matrix Vector Multiplication , 1999, IEEE Trans. Parallel Distributed Syst..

[4]  Bruce Hendrickson,et al.  Graph Partitioning and Parallel Solvers: Has the Emperor No Clother? (Extended Abstract) , 1998, IRREGULAR.

[5]  Mehmet Deveci,et al.  Hypergraph partitioning for multiple communication cost metrics: Model and methods , 2015, J. Parallel Distributed Comput..

[6]  Shashi Shekhar,et al.  Multilevel hypergraph partitioning: applications in VLSI domain , 1999, IEEE Trans. Very Large Scale Integr. Syst..

[7]  Bora Uçar,et al.  On analysis of partitioning models and metrics in parallel sparse matrix-vector multiplication , 2013 .

[8]  Bora Uçar,et al.  Encapsulating Multiple Communication-Cost Metrics in Partitioning Sparse Rectangular Matrices for Parallel Matrix-Vector Multiplies , 2004, SIAM J. Sci. Comput..

[9]  Ümit V. Çatalyürek,et al.  A fine-grain hypergraph model for 2D decomposition of sparse matrices , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[10]  Nelma Moreira,et al.  On the density of languages representing finite set partitions. , 2005 .

[11]  Martin G. Everett,et al.  Parallel Dynamic Graph Partitioning for Adaptive Unstructured Meshes , 1997, J. Parallel Distributed Comput..

[12]  Brendan Vastenhouw,et al.  A Two-Dimensional Data Distribution Method for Parallel Sparse Matrix-Vector Multiplication , 2005, SIAM Rev..

[13]  José D. P. Rolim,et al.  Solving Irregularly Structured Problems in Parallel , 1997, Lecture Notes in Computer Science.

[14]  Rob H. Bisseling,et al.  Communication balancing in parallel sparse matrix-vector multiplication , 2005 .

[15]  Mehmet Deveci,et al.  UMPa: A multi-objective, multi-level partitioner for communication minimization , 2012, Graph Partitioning and Graph Clustering.

[16]  Thomas Lengauer,et al.  Combinatorial algorithms for integrated circuit layout , 1990, Applicable theory in computer science.

[17]  Tamara G. Kolda,et al.  Graph partitioning models for parallel computing , 2000, Parallel Comput..

[18]  Bora Uçar,et al.  Integrated data placement and task assignment for scientific workflows in clouds , 2011, DIDC '11.

[19]  Ümit V. Çatalyürek,et al.  PaToH: Partitioning Tool for Hypergraphs , 1999 .

[20]  Ümit V. Çatalyürek,et al.  Fast recommendation on bibliographic networks with sparse-matrix ordering and partitioning , 2012, Social Network Analysis and Mining.

[21]  Rob H. Bisseling,et al.  An exact algorithm for sparse matrix bipartitioning , 2015, J. Parallel Distributed Comput..