Speculative Segmented Sum for Sparse Matrix-Vector Multiplication on Heterogeneous Processors

From MaRDI portal
Publication:6261200

arXiv1504.06474MaRDI QIDQ6261200

Weifeng Liu, Brian Vinter

Publication date: 24 April 2015

Abstract: Sparse matrix-vector multiplication (SpMV) is a central building block for scientific software and graph applications. Recently, heterogeneous processors composed of different types of cores attracted much attention because of their flexible core configuration and high energy efficiency. In this paper, we propose a compressed sparse row (CSR) format based SpMV algorithm utilizing both types of cores in a CPU-GPU heterogeneous processor. We first speculatively execute segmented sum operations on the GPU part of a heterogeneous processor and generate a possibly incorrect results. Then the CPU part of the same chip is triggered to re-arrange the predicted partial sums for a correct resulting vector. On three heterogeneous processors from Intel, AMD and nVidia, using 20 sparse matrices as a benchmark suite, the experimental results show that our method obtains significant performance improvement over the best existing CSR-based SpMV algorithms. The source code of this work is downloadable at https://github.com/bhSPARSE/Benchmark_SpMV_using_CSR




Has companion code repository: https://github.com/bhSPARSE/Benchmark_SpMV_using_CSR








This page was built for publication: Speculative Segmented Sum for Sparse Matrix-Vector Multiplication on Heterogeneous Processors

Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q6261200)