Publications

library_booksTensor Algebra Compiler
Abstract
Tensor and linear algebra is pervasive in data analytics and the physical sciences. Often the tensors, matrices or even vectors are sparse. Computing expressions involving a mix of sparse and dense tensors, matrices and vectors requires writing kernels for every operation and combination of formats of interest. The number of possibilities is infinite, which makes it impossible to write library code for all. This problem cries out for a compiler approach. This paper presents a new technique that compiles compound tensor algebra expressions combined with descriptions of tensor formats into efficient loops. The technique is evaluated in a prototype compiler called taco, demonstrating competitive performance to bestinclass handwritten codes for tensor and matrix operations.
BibTex
@techreport{kjolstad17:tensorcompilertechreport, author={Fredrik Kjolstad, Shoaib Kamil, Stephen Chou, David Lugato and Saman Amarasinghe}, title={The Tensor Algebra Compiler}, institution={Massachusetts Institute of Technology}, year={2017}, month={February}, publisher={CSAIL}, source={http://hdl.handle.net/1721.1/107013}, keywords = {Tensor, tensor algebra, linear algebra, C++ library} }