arrow
Return

STRASSEN'S ALGORITHM FOR TENSOR CONTRACTION

delete2018-01-01
delete9
delete
OA
AI
H
Huang, Jianyu *
D
Devin A. Matthews
R
Robert A. Geijn
DOI:10.1137/17M1135578delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Tensor contraction (TC) is an important computational kernel widely used in numerous applications. It is a multidimensional generalization of matrix multiplication (GEMM). While Strassen's algorithm for GEMM is well studied in theory and practice, extending it to accelerate TC has not been previously pursued. Thus, we believe this to be the first paper to demonstrate how one can in practice speed up TC with Strassen's algorithm. By adopting a block-scatter-matrix format, a novel matrix-centric tensor layout, we can conceptually view TC as GEMM for a general stride storage, with an implicit tensor-to-matrix transformation. This insight enables us to tailor a recent state-of-the-art implementation of Strassen's algorithm to a recent state-of-the-art TC, avoiding explicit transpositions (permutations) and extra workspace, and reducing the overhead of memory movement that is incurred. Performance benefits are demonstrated with a performance model as well as in practice on modern single core, multicore, and distributed memory parallel architectures, achieving up to 1.3X speedup. The resulting implementations can serve as a drop-in replacement for various applications with significant speedup.
Keywords:
multilinear algebra
Strassen's algorithm
tensor contraction
matrix multiplication
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

SIAM Journal on Scientific Computing cover
SIAM Journal on Scientific Computing
IF:
2.6
Papers:
5.1K
Citations:
1.8W

Organization

U
university of texas austin
Scholars:
2.4W
Papers: 2.0W
Citations: 54
U
university of texas system
Scholars:
18.5W
Papers: 15.6W
Citations: 210