Tensor Algebra Processing Primitives (TAPP): Towards a Standard for Tensor Operations
Jan Brandejs, Niklas Hörnblad, Edward F. Valeev, Alexander Heinecke, Jeff Hammond, Devin Matthews, Paolo Bientinesi
TL;DR
Tensor contractions are central to AI and quantum simulations, yet the software ecosystem suffers from fragmentation due to the absence of a universal standard. The authors propose Tensor Algebra Processing Primitives (TAPP), a BLAS-like, C-based interface that decouples applications from hardware back-ends while providing a correct reference implementation and a governance-driven ecosystem. The work formalizes tensor contractions, presents a comprehensive interface design, and demonstrates practical integration with TBLIS, cuTENSOR, and the DIRAC quantum chemistry package, highlighting improved portability and reduced dependency risk. By enabling back-end experimentation and stable cross-framework collaboration, TAPP aims to catalyze community-driven evolution of tensor primitives and foster performance portability across architectures.
Abstract
To address the absence of a universal standard interface for tensor operations, we introduce the Tensor Algebra Processing Primitives (TAPP), a C-based interface designed to decouple the application layer from hardware-specific implementations. We provide a mathematical formulation of tensor contractions and a reference implementation to ensure correctness and facilitate the validation of optimized kernels. Developed through community consensus involving academic and industrial stakeholders, TAPP aims to enable performance portability and resolving dependency challenges. The viability of the standard is demonstrated through successful integrations with the TBLIS and cuTENSOR libraries, as well as the DIRAC quantum chemistry package.
