Minimum Cost Loop Nests for Contraction of a Sparse Tensor with a Tensor Network

Fuente: arXiv
Enregistré dans:
Détails bibliographiques
Auteurs principaux: Kanakagiri, Raghavendra, Solomonik, Edgar
Format: Preprint
Publié: 2023
Sujets:
Accès en ligne:
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
_version_ 1866914871677812736
author Kanakagiri, Raghavendra
Solomonik, Edgar
author_facet Kanakagiri, Raghavendra
Solomonik, Edgar
contents Sparse tensor decomposition and completion are common in numerous applications, ranging from machine learning to computational quantum chemistry. Typically, the main bottleneck in optimization of these models are contractions of a single large sparse tensor with a network of several dense matrices or tensors (SpTTN). Prior works on high-performance tensor decomposition and completion have focused on performance and scalability optimizations for specific SpTTN kernels. We present algorithms and a runtime system for identifying and executing the most efficient loop nest for any SpTTN kernel. We consider both enumeration of such loop nests for autotuning and efficient algorithms for finding the lowest cost loop-nest for simpler metrics, such as buffer size or cache miss models. Our runtime system identifies the best choice of loop nest without user guidance, and also provides a distributed-memory parallelization of SpTTN kernels. We evaluate our framework using both real-world and synthetic tensors. Our results demonstrate that our approach outperforms available generalized state-of-the-art libraries and matches the performance of specialized codes.
format Preprint
id arxiv_https___arxiv_org_abs_2307_05740
institution arXiv
publishDate 2023
record_format arxiv
spellingShingle Minimum Cost Loop Nests for Contraction of a Sparse Tensor with a Tensor Network
Kanakagiri, Raghavendra
Solomonik, Edgar
Distributed, Parallel, and Cluster Computing
Mathematical Software
Performance
Programming Languages
G.1.3; D.1.3
Sparse tensor decomposition and completion are common in numerous applications, ranging from machine learning to computational quantum chemistry. Typically, the main bottleneck in optimization of these models are contractions of a single large sparse tensor with a network of several dense matrices or tensors (SpTTN). Prior works on high-performance tensor decomposition and completion have focused on performance and scalability optimizations for specific SpTTN kernels. We present algorithms and a runtime system for identifying and executing the most efficient loop nest for any SpTTN kernel. We consider both enumeration of such loop nests for autotuning and efficient algorithms for finding the lowest cost loop-nest for simpler metrics, such as buffer size or cache miss models. Our runtime system identifies the best choice of loop nest without user guidance, and also provides a distributed-memory parallelization of SpTTN kernels. We evaluate our framework using both real-world and synthetic tensors. Our results demonstrate that our approach outperforms available generalized state-of-the-art libraries and matches the performance of specialized codes.
title Minimum Cost Loop Nests for Contraction of a Sparse Tensor with a Tensor Network
topic Distributed, Parallel, and Cluster Computing
Mathematical Software
Performance
Programming Languages
G.1.3; D.1.3
url https://arxiv.org/abs/2307.05740