J Supercomput DOI 10.1007/s11227-015-1571-0 Adaptive sparse matrix representation for efficient matrix–vector multiplication Pantea Zardoshti 1,2 · Farshad Khunjush 2 · Hamid Sarbazi-Azad 1,3 © Springer Science+Business Media New York 2015 Abstract A wide range of applications in engineering and scientific computing are based on the sparse matrix computation. There exist a variety of data representations to keep the non-zero elements in sparse matrices, and each representation favors some matrices while not working well for some others. The existing studies tend to process all types of applications, e.g., the most popular application which is matrix–vector mul- tiplication, with different sparse matrix structures using a fixed representation. While Graphics Processing Units (GPUs) have evolved into a very attractive platform for general purpose computations, most of the existing works on sparse matrix–vector mul- tiplication (SpMV, for short) consider CPUs. In this work, we design and implement an adaptive GPU-based SpMV scheme that selects the best format for the input matrix having the configuration and characteristics of GPUs in mind. We study the effect of various parameters and different settings on the performance of SpMV applications when employing different data representations. We then employ an adaptive scheme to execute different sparse matrix applications using proper sparse matrix represen- Electronic supplementary material The online version of this article (doi:10.1007/s11227-015-1571-0) contains supplementary material, which is available to authorized users. B Pantea Zardoshti zardoshti@ipm.ir Farshad Khunjush khunjush@shirazu.ac.ir Hamid Sarbazi-Azad azad@sharif.edu; azad@ipm.ir 1 School of Computer Science, Institute for Research in Fundamental Sciences (IPM), Tehran, Iran 2 Department of Computer Science and Engineering, School of Electrical and Computer Engineering, Shiraz University, Shiraz, Iran 3 Department of Computer Engineering, Sharif University of Technology, Tehran, Iran 123