Autotuning runtime specialization for sparse matrix-vector multiplication

Buse Yilmaz, Bariş Aktemur, María J. Garzarán, Sam Kamin, Furkan Kiraç

Research output: Contribution to journalArticlepeer-review


Runtime specialization is used for optimizing programs based on partial information available only at runtime. In this paper we apply autotuning on runtime specialization of Sparse Matrix-VectorMultiplication to predict a best specialization method among several. In 91% to 96% of the predictions, either the best or the second-best method is chosen. Predictions achieve average speedups that are very close to the speedups achievable when only the best methods are used. By using an efficient code generator and a carefully designed set of matrix features, we show the runtime costs can be amortized to bring performance benefits for many real-world cases.

Original languageEnglish (US)
Article number5
JournalACM Transactions on Architecture and Code Optimization
Issue number1
StatePublished - Mar 2016


  • Autotuning
  • Runtime code generation
  • Sparse matrix-vector multiplication

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Hardware and Architecture


Dive into the research topics of 'Autotuning runtime specialization for sparse matrix-vector multiplication'. Together they form a unique fingerprint.

Cite this