Author
Kamin, S., Jesus Garzaran, M., Aktemur, Tankut Barış, Xu, D., Yılmaz, Buse, Chen, Z.
Publication Date
2014
Publication Place
-
ACM
Subject
Program specialization, Sparce matrix-vector multiplication, Performance evaluation
Type
Document
Language
English
Digital
Yes
Manuscript
No
Library
Özyeğin University
Library Asset ID
978-1-4503-3161-6
Record ID
aa48d919-acd4-42d5-8cdd-f444b9366c51
Library Location
Computer Science
Date
2014
Notes
Due to copyright restrictions, the access to the full text of this article is only available via subscription.
Sample Text
Runtime specialization optimizes programs based on partial information available only at run time. It is applicable when some input data is used repeatedly while other input data varies. This technique has the potential of generating highly efficient codes. In this paper, we explore the potential for obtaining speedups for sparse matrix-dense vector multiplication using runtime specialization, in the case where a single matrix is to be multiplied by many vectors. We experiment with five methods involving runtime specialization, comparing them to methods that do not (including Intel's MKL library). For this work, our focus is the evaluation of the speedups that can be obtained with runtime specialization without considering the overheads of the code generation. Our experiments use 23 matrices from the Matrix Market and Florida collections, and run on five different machines. In 94 of those 115 cases, the specialized code runs faster than any version without specialization. If we only use specialization, the average speedup with respect to Intel's MKL library ranges from 1.44x to 1.77x, depending on the machine. We have also found that the best method depends on the matrix and machine; no method is best for all matrices and machines.
DOI
10.1145/2658761.2658773