Taco: A tool to generate tensor algebra kernels
Tensor algebra is an important computational abstraction that is increasingly used in data analytics, machine learning, engineering, and the physical sciences. However, the number of tensor expressions is unbounded, which makes it hard to develop and optimize libraries. Furthermore, the tensors are...
Main Authors: | , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
IEEE
2021
|
Online Access: | https://hdl.handle.net/1721.1/137385 |
_version_ | 1811084077517766656 |
---|---|
author | Kjolstad, Fredrik Chou, Stephen Lugato, David Kamil, Shoaib Amarasinghe, Saman |
author_facet | Kjolstad, Fredrik Chou, Stephen Lugato, David Kamil, Shoaib Amarasinghe, Saman |
author_sort | Kjolstad, Fredrik |
collection | MIT |
description | Tensor algebra is an important computational abstraction that is increasingly used in data analytics, machine learning, engineering, and the physical sciences. However, the number of tensor expressions is unbounded, which makes it hard to develop and optimize libraries. Furthermore, the tensors are often sparse (most components are zero), which means the code has to traverse compressed formats. To support programmers we have developed taco, a code generation tool that generates dense, sparse, and mixed kernels from tensor algebra expressions. This paper describes the taco web and command-line tools and discusses the benefits of a code generator over a traditional library. See also the demo video at tensor-compiler.org/ase2017. |
first_indexed | 2024-09-23T12:44:23Z |
format | Article |
id | mit-1721.1/137385 |
institution | Massachusetts Institute of Technology |
language | English |
last_indexed | 2024-09-23T12:44:23Z |
publishDate | 2021 |
publisher | IEEE |
record_format | dspace |
spelling | mit-1721.1/1373852021-11-05T03:21:22Z Taco: A tool to generate tensor algebra kernels Kjolstad, Fredrik Chou, Stephen Lugato, David Kamil, Shoaib Amarasinghe, Saman Tensor algebra is an important computational abstraction that is increasingly used in data analytics, machine learning, engineering, and the physical sciences. However, the number of tensor expressions is unbounded, which makes it hard to develop and optimize libraries. Furthermore, the tensors are often sparse (most components are zero), which means the code has to traverse compressed formats. To support programmers we have developed taco, a code generation tool that generates dense, sparse, and mixed kernels from tensor algebra expressions. This paper describes the taco web and command-line tools and discusses the benefits of a code generator over a traditional library. See also the demo video at tensor-compiler.org/ase2017. 2021-11-04T18:14:57Z 2021-11-04T18:14:57Z 2017-10 2019-05-02T17:17:57Z Article http://purl.org/eprint/type/ConferencePaper https://hdl.handle.net/1721.1/137385 Kjolstad, Fredrik, Chou, Stephen, Lugato, David, Kamil, Shoaib and Amarasinghe, Saman. 2017. "Taco: A tool to generate tensor algebra kernels." en 10.1109/ase.2017.8115709 Creative Commons Attribution-Noncommercial-Share Alike http://creativecommons.org/licenses/by-nc-sa/4.0/ application/pdf IEEE Other repository |
spellingShingle | Kjolstad, Fredrik Chou, Stephen Lugato, David Kamil, Shoaib Amarasinghe, Saman Taco: A tool to generate tensor algebra kernels |
title | Taco: A tool to generate tensor algebra kernels |
title_full | Taco: A tool to generate tensor algebra kernels |
title_fullStr | Taco: A tool to generate tensor algebra kernels |
title_full_unstemmed | Taco: A tool to generate tensor algebra kernels |
title_short | Taco: A tool to generate tensor algebra kernels |
title_sort | taco a tool to generate tensor algebra kernels |
url | https://hdl.handle.net/1721.1/137385 |
work_keys_str_mv | AT kjolstadfredrik tacoatooltogeneratetensoralgebrakernels AT choustephen tacoatooltogeneratetensoralgebrakernels AT lugatodavid tacoatooltogeneratetensoralgebrakernels AT kamilshoaib tacoatooltogeneratetensoralgebrakernels AT amarasinghesaman tacoatooltogeneratetensoralgebrakernels |