The Linear Algebra Mapping Problem. Current state of linear algebra languages and libraries
Christos Psarras, Henrik Barthels, Paolo Bientinesi

TL;DR
This paper examines the disconnect between high-performance linear algebra libraries and user-friendly high-level languages, highlighting performance issues in current mappings and providing guidelines for better language and library development.
Contribution
It introduces the Linear Algebra Mapping Problem and evaluates how well popular high-level languages solve benchmark problems, offering concrete insights for future improvements.
Findings
High-level languages often produce suboptimal performance in linear algebra computations.
Benchmark results reveal gaps between compiler optimizations and linear algebra-specific optimizations.
Guidelines are proposed for developing more efficient linear algebra languages and libraries.
Abstract
We observe a disconnect between the developers and the end users of linear algebra libraries. On the one hand, the numerical linear algebra and the high-performance communities invest significant effort in the development and optimization of highly sophisticated numerical kernels and libraries, aiming at the maximum exploitation of both the properties of the input matrices, and the architectural features of the target computing platform. On the other hand, end users are progressively less likely to go through the error-prone and time consuming process of directly using said libraries by writing their code in C or Fortran; instead, languages and libraries such as Matlab, Julia, Eigen and Armadillo, which offer a higher level of abstraction, are becoming more and more popular. Users are given the opportunity to code matrix computations with a syntax that closely resembles the mathematical…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Distributed and Parallel Computing Systems · Matrix Theory and Algorithms
