# tensor-compiler/taco

The Tensor Algebra Compiler (taco) computes sparse tensor expressions on CPUs and GPUs

Repository: https://github.com/tensor-compiler/taco
Canonical: https://ross.abutalabs.com/products/taco
Homepage: http://tensor-compiler.org
Language: C++
License: NOASSERTION
License Family: other
Topics: tensor, tensor-algebra, linear-algebra, library, code-generator, sparse, tensor-algebra-compiler
Last push: 2025-04-14T19:28:02+00:00

## Health v2 (maintenance only)
Score: 30/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 16, release rhythm 8, longevity 100
- inputs: {"age_days": 3629, "days_push": 506, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1366, forks 200 (observed 2026-08-28T04:04:31.293647+00:00)

## What it is
TACO (The Tensor Algebra Compiler) is a C++ library that computes sparse and dense tensor algebra and linear algebra expressions, generating kernels with performance competitive with hand-optimized code. It can be used as a C++ or Python library, a command-line code generator, and supports OpenMP and CUDA execution.

## Use cases
- compute sparse matrix-vector multiplication (SpMV) efficiently
- compute MTTKRP for sparse tensor factorization
- compute SDDMM for machine learning factor analysis
- generate optimized C kernels for tensor expressions
- load and compute on sparse tensors in CSR, COO, or CSF formats
- run tensor algebra on GPUs with CUDA
- prototype sparse linear algebra in Python with NumPy/SciPy

## When to choose
- you need high-performance sparse tensor or linear algebra kernels without hand-optimizing them
- you work with mixed sparse/dense tensor computations in C++ or Python
- you want to generate custom optimized kernels for specific tensor expressions
- you need CSR, COO, CSF, or custom sparse storage format support

## When to avoid
- you only need dense linear algebra, where BLAS libraries like Eigen or MKL are simpler
- you need deep learning autodiff or neural network training rather than tensor algebra kernels
- you need a pure Python solution without a C++ build toolchain

## Facets
- artifact type: library
- maturity: maintenance
- function: compiler, math, machine-learning
- domain: data-science, machine-learning, performance
- platform: cpp, python, cli
- tags: sparse-tensors, tensor-algebra, linear-algebra, code-generator, cuda, openmp, spmv, mttkrp, sddmm, numerical-computing, code-generation, algorithms, scientific-computing, linux, macos, gpu

## Member repositories
- tensor-compiler/taco (main) score 30

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:31.293647+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:41:14.083762+00:00, confidence not recorded.
  - readme: https://github.com/tensor-compiler/taco (fetched 2026-08-28T04:04:31.293647+00:00, sha 90a9669902a3)
  - homepage: http://tensor-compiler.org (fetched 2026-08-29T11:58:31.815358+00:00, sha 5daa147711ea)
  - site_page: http://tensor-compiler.org/docs (fetched 2026-08-29T11:58:31.824808+00:00, sha 59dcc566973b)
  - site_page: http://tensor-compiler.org/docs/data_analytics.html (fetched 2026-08-29T11:58:31.827211+00:00, sha f76114350012)
  - site_page: http://tensor-compiler.org/docs/scientific_computing.html (fetched 2026-08-29T11:58:31.829785+00:00, sha 9d14669c1bf4)
  - site_page: http://tensor-compiler.org/docs/machine_learning.html (fetched 2026-08-29T11:58:31.831717+00:00, sha b0a6e7062178)
  - site_page: http://tensor-compiler.org/docs/index.html (fetched 2026-08-29T11:58:31.833476+00:00, sha de0d950e0bd0)
- Data as of 2026-08-30T08:39:29.467469+00:00.
