Communication balancing in parallel sparse matrix-vector multiplication

Publication date

2005

Authors

Bisseling, R.H.ISNI 0000000384208994
Meesen, W.

Editors

Advisors

Supervisors

DOI

Document Type

Article
Open Access logo

License

Abstract

Given a partitioning of a sparse matrix for parallel matrix–vector multiplication, which determines the total communication volume, we try to find a suitable vector partitioning that balances the communication load among the processors. We present a new lower bound for the maximum communication cost per processor, an optimal algorithm that attains this bound for the special case where each matrix column is owned by at most two processors, and a new heuristic algorithm for the general case that often attains the lower bound. This heuristic algorithm tries to avoid raising the current lower bound when assigning vector components to processors. Experimental results show that the new algorithm often improves upon the heuristic algorithm that is currently implemented in the sparse matrix partitioning package Mondriaan. Trying both heuristics combined with a greedy improvement procedure solves the problem optimally in most practical cases. The vector partitioning problem is proven to be NP-complete.

Keywords

Wiskunde en Informatica (WIIN), Mathematics, Wiskunde en computerwetenschappen, Landbouwwetenschappen, Wiskunde: algemeen

Citation

Bisseling, R H & Meesen, W 2005, 'Communication balancing in parallel sparse matrix-vector multiplication', Electronic Transactions on Numerical Analysis, vol. 21, pp. 47-65.