On Optimal Partitioning For Sparse Matrices In Variable Block Row Format

05/25/2020
by   Peter Ahrens, et al.
0

The Variable Block Row (VBR) format is an influential blocked sparse matrix format designed to represent shared sparsity structure between adjacent rows and columns. VBR consists of groups of adjacent rows and columns, storing the resulting blocks that contain nonzeros in a dense format. This reduces the memory footprint and enables optimizations such as register blocking and instruction-level parallelism. Existing approaches use heuristics to determine which rows and columns should be grouped together. We adapt and optimize a dynamic programming algorithm for sequential hypergraph partitioning to produce a linear time algorithm which can determine the optimal partition of rows under an expressive cost model, assuming the column partition remains fixed. Furthermore, we show that the problem of determining an optimal partition for the rows and columns simultaneously is NP-Hard under a simple linear cost model. To evaluate our algorithm empirically against existing heuristics, we introduce the 1D-VBR format, a specialization of VBR format where columns are left ungrouped. We evaluate our algorithms on all 1626 real-valued matrices in the SuiteSparse Matrix Collection. When asked to minimize an empirically derived cost model for a sparse matrix-vector multiplication kernel, our algorithm produced partitions whose 1D-VBR realizations achieve a speedup of at least 1.18 over an unblocked kernel on 25 least 1.59 on 12.5 algorithm had faster SpMVs than the 1D-VBR representations produced by any existing heuristics on 87.8

READ FULL TEXT
research
12/03/2018

Efficient Distributed-Memory Parallel Matrix-Vector Multiplication with Wide or Tall Unstructured Sparse Matrices

This paper presents an efficient technique for matrix-vector and vector-...
research
07/31/2020

Load Plus Communication Balancing in Contiguous Partitions for Distributed Sparse Matrices: Linear-Time Algorithms

We study partitioning to parallelize multiplication of one or more dense...
research
09/26/2019

Heuristics for Symmetric Rectilinear Matrix Partitioning

Partitioning sparse matrices and graphs is a common and important proble...
research
09/16/2020

On Symmetric Rectilinear Matrix Partitioning

Even distribution of irregular workload to processing units is crucial f...
research
12/17/2007

An Approximation Ratio for Biclustering

The problem of biclustering consists of the simultaneous clustering of r...
research
03/29/2020

Learning and Testing Variable Partitions

Let F be a multivariate function from a product set Σ^n to an Abelian gr...
research
02/16/2023

LinSets.zip: Compressing Linear Set Diagrams

Linear diagrams are used to visualize set systems by depicting set membe...

Please sign up or login with your details

Forgot password? Click here to reset