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
The linear algebra mapping problem: Current state of linear algebra languages and libraries
RWTH Aachen University, Aachen, Germany.
RWTH Aachen University, Aachen, Germany.
Umeå University, Faculty of Science and Technology, Department of Computing Science. Umeå University, Faculty of Science and Technology, High Performance Computing Center North (HPC2N).ORCID iD: 0000-0002-4972-7097
2022 (English)In: ACM Transactions on Mathematical Software, ISSN 0098-3500, E-ISSN 1557-7295, Vol. 48, no 3, article id 3549935Article in journal (Refereed) Published
Abstract [en]

We observe a disconnect between developers and end-users of linear algebra libraries. On the one hand, developers invest significant effort in creating sophisticated numerical kernels. On the other hand, end-users are progressively less likely to go through the time consuming process of directly using said kernels; instead, languages and libraries, which offer a higher level of abstraction, are becoming increasingly popular. These languages offer mechanisms that internally map the input program to lower level kernels. Unfortunately, our experience suggests that, in terms of performance, this translation is typically suboptimal.

In this paper, we define the problem of mapping a linear algebra expression to a set of available building blocks as the "Linear Algebra Mapping Problem"(LAMP); we discuss its NP-complete nature, and investigate how effectively a benchmark of test problems is solved by popular high-level programming languages and libraries. Specifically, we consider Matlab, Octave, Julia, R, Armadillo (C++), Eigen (C++), and NumPy (Python); the benchmark is meant to test both compiler optimizations, as well as linear algebra specific optimizations, such as the optimal parenthesization of matrix products. The aim of this study is to facilitate the development of languages and libraries that support linear algebra computations.

Place, publisher, year, edition, pages
ACM Digital Library, 2022. Vol. 48, no 3, article id 3549935
Keywords [en]
compilers, domain specific languages, LAMP, linear algebra, linear algebra mapping problem
National Category
Algebra and Logic Computer Sciences
Identifiers
URN: urn:nbn:se:umu:diva-203242DOI: 10.1145/3549935ISI: 000865883900002Scopus ID: 2-s2.0-85138262428OAI: oai:DiVA.org:umu-203242DiVA, id: diva2:1727843
Available from: 2023-01-17 Created: 2023-01-17 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 ScienceHigh Performance Computing Center North (HPC2N)
In the same journal
ACM Transactions on Mathematical Software
Algebra and LogicComputer Sciences

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 453 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