Loading…

Optimal Sparse Matrix Dense Vector Multiplication inthe I/O-Model

We study the problem of sparse-matrix dense-vector multiplication (SpMV) in external memory. The task of SpMV is to compute y:=Ax, where A is a sparse NN matrix and x is a vector. We express sparsity by a parameterk, and for each choice ofk consider the class of matrices where the number of nonzero...

Full description

Saved in:
Bibliographic Details
Published in:Theory of computing systems 2010-11, Vol.47 (4), p.934-962
Main Authors: Bender, Michael A, Brodal, Gerth Stoelting, Fagerberg, Rolf, Jacob, Riko, Vicari, Elias
Format: Article
Language:English
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:We study the problem of sparse-matrix dense-vector multiplication (SpMV) in external memory. The task of SpMV is to compute y:=Ax, where A is a sparse NN matrix and x is a vector. We express sparsity by a parameterk, and for each choice ofk consider the class of matrices where the number of nonzero entries is kN, i.e., where the average number of nonzero entries per column isk. We investigate what is the external worst-case complexity, i.e., the best possible upper bound on the number of I/Os, as a function of k, N and the parameters M (memory size) and B (track size) of the I/O-model. We determine this complexity up to a constant factor for all meaningful choices of these parameters, as long as k less than or equal to N super(1-) epsilon where epsilon depends on the problem variant. Our model of computation for the lower bound is a combination of the I/O-models of Aggarwal and Vitter, and of Hong and Kung. We study variants of the problem, differing in the memory layout ofA. IfA is stored in column major layout, we prove that SpMV has I/O complexity Theta ( min { kN B max { 1 , log M / B N max { k , M } } , kN } ) for k less than or equal to N super(1-) epsilon and any constant 0< epsilon
ISSN:1432-4350
1433-0490
DOI:10.1007/s00224-010-9285-4