Proceedings of the 1999 ACM/IEEE conference on Supercomputing Improving Performance of Sparse Matrix-Vector Multiplication Portland, Oregon, USA November 13-November 18 ISBN: 1-58113-091-0
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/SC.1999.10030
Sparse matrix-vector multiplication (SpMxV) is one of the most important computational kernels in scientific computing. It often suffers from poor cache utilization and extra load operations because of memory indirections used to exploit sparsity.We propose alternative data structures, along with reordering algorithms to increase effectiveness of these data structures, to reduce the number of memory indirections. Toledo proposed handling the 1x2 blocks of a matrix separately, doing only one indirection for each block. We propose packing all contiguous nonzeros into a block to reduce the number of memory indirections further. This reduces memory indirections per block to one for the cost of an extra array in storage and a loop during SpMxV.We also propose an algorithm to permute the nonzeros of the matrix into contiguous locations. We state this problem as the traveling salesperson problem and use associated heuristics. Experiments verify the effectiveness of our techniques.
Citation:
Ali Pinar, Michael T. Heath, "Improving Performance of Sparse Matrix-Vector Multiplication," sc, pp.30, Proceedings of the 1999 ACM/IEEE conference on Supercomputing, 1999 Usage of this product signifies your acceptance of the Terms of Use. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||