Skip to main content

Program Generation for Small-Scale Linear Algebra

Markus Püschel ( ETH Zürich )

Many performance-critical computations in communication, control, multimedia processing, machine learning, or graphics fall into the domain of linear algebra. Existing optimized libraries for linear algebra are usually optimized for large scale computation and for uses in scientific computing. For small scale computations in other domains, they are often suboptimal. In this talk I present our work on generating optimized linear algebra code directly from a mathematical description using techniques developed in Spiral: layers of domain-specific languages to express the mathematics and the use of rewriting systems to reshape the computation at a high level of abstraction to overcome known compiler limitations. (This is the thesis work of Daniele Spampinato.)

Speaker bio

Markus Püschel is a Professor and former Department Head of Computer Science at ETH Zürich, Switzerland. Before, he was a Professor of Electrical and Computer Engineering at Carnegie Mellon University, where he still has an adjunct status. He is an IEEE Fellow. One of his longstanding interests is automating the production of high performance software and hardware designs for mathematical functionality as exemplified by the Spiral project. Besides this, his current interests include program generation, novel forms of Fourier analysis and its applications, machine learning, and program analysis. For more information, please visit




Share this: