Reduce, Reuse, Recycle (R^3): a Design Methodology for Sparse Matrix Vector Multiplication on Reconfigurable Platforms
Department of Electrical and Computer Engineering, Iowa State University, Ames, IA, USA
International Conference on Application-specific Systems, Architectures and Processors (ASAP), 2013
@conference{TowZam13A,
title={Reduce, Reuse, Recycle (R^3): a Design Methodology for Sparse Matrix Vector Multiplication on Reconfigurable Platforms},
booktitle={Proceedings of the International Conference on Application-specific Systems, Architectures and Processors (ASAP)},
year={2013},
month={June},
author={Kevin Townsend and Joseph Zambreno}
}
Sparse Matrix Vector Multiplication (SpMV) is an important computational kernel in many scientific computing applications. Pipelining multiply-accumulate operations shifts SpMV from a computationally bounded kernel to an I/O bounded kernel. In this paper, we propose a design methodology and hardware architecture for SpMV that seeks to utilize system memory bandwidth as efficiently as possible, by Reducing the matrix element storage with on-chip decompression hardware, Reusing the vector data by mixing row and column matrix traversal, and Recycling data with matrix-dependent on-chip storage. Our experimental results with a Convey HC-1/HC-2 reconfigurable computing system indicate that for certain sparse matrices, our R^3 methodology performs twice as fast as previous reconfigurable implementations, and effectively competes against other platforms.
April 23, 2013 by hgpu