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)