Umeå University's logo

umu.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Linnea: Automatic Generation of Efficient Linear Algebra Programs
AICES, RWTH Aachen University, Schinkelstr. 2, Aachen, Germany.
AICES, RWTH Aachen University, Schinkelstr. 2, Aachen, Germany.
Umeå University, Faculty of Science and Technology, Department of Computing Science.ORCID iD: 0000-0002-4972-7097
2021 (English)In: ACM Transactions on Mathematical Software, ISSN 0098-3500, E-ISSN 1557-7295, Vol. 47, no 3, article id 22Article in journal (Refereed) Published
Abstract [en]

The translation of linear algebra computations into efficient sequences of library calls is a non-trivial task that requires expertise in both linear algebra and high-performance computing. Almost all high-level languages and libraries for matrix computations (e.g., Matlab, Eigen) internally use optimized kernels such as those provided by BLAS and LAPACK; however, their translation algorithms are often too simplistic and thus lead to a suboptimal use of said kernels, resulting in significant performance losses. To combine the productivity offered by high-level languages, and the performance of low-level kernels, we are developing Linnea, a code generator for linear algebra problems. As input, Linnea takes a high-level description of a linear algebra problem; as output, it returns an efficient sequence of calls to high-performance kernels. Linnea uses a custom best-first search algorithm to find a first solution in less than a second, and increasingly better solutions when given more time. In 125 test problems, the code generated by Linnea almost always outperforms Matlab, Julia, Eigen, and Armadillo, with speedups up to and exceeding 10×.

Place, publisher, year, edition, pages
ACM Digital Library, 2021. Vol. 47, no 3, article id 22
Keywords [en]
code generation, Linear algebra
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:umu:diva-185810DOI: 10.1145/3446632ISI: 000668366600003Scopus ID: 2-s2.0-85108915765OAI: oai:DiVA.org:umu-185810DiVA, id: diva2:1578824
Available from: 2021-07-07 Created: 2021-07-07 Last updated: 2023-11-10Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full textScopus

Authority records

Bientinesi, Paolo

Search in DiVA

By author/editor
Bientinesi, Paolo
By organisation
Department of Computing Science
In the same journal
ACM Transactions on Mathematical Software
Computer Sciences

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 459 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf