DocumentCode
3198955
Title
SPLATT: Efficient and Parallel Sparse Tensor-Matrix Multiplication
Author
Smith, Shaden ; Ravindran, Niranjay ; Sidiropoulos, Nicholas D. ; Karypis, George
Author_Institution
Univ. of Minnesota, Minneapolis, MN, USA
fYear
2015
fDate
25-29 May 2015
Firstpage
61
Lastpage
70
Abstract
Multi-dimensional arrays, or tensors, are increasingly found in fields such as signal processing and recommender systems. Real-world tensors can be enormous in size and often very sparse. There is a need for efficient, high-performance tools capable of processing the massive sparse tensors of today and the future. This paper introduces SPLATT, a C library with shared-memory parallelism for three-mode tensors. SPLATT contains algorithmic improvements over competing state of the art tools for sparse tensor factorization. SPLATT has a fast, parallel method of multiplying a matricide tensor by a Khatri-Rao product, which is a key kernel in tensor factorization methods. SPLATT uses a novel data structure that exploits the sparsity patterns of tensors. This data structure has a small memory footprint similar to competing methods and allows for the computational improvements featured in our work. We also present a method of finding cache-friendly reordering and utilizing them with a novel form of cache tiling. To our knowledge, this is the first work to investigate reordering and cache tiling in this context. SPLATT averages almost 30x speedup compared to our baseline when using 16 threads and reaches over 80x speedup on NELL-2.
Keywords
C language; cache storage; data structures; matrix multiplication; shared memory systems; software libraries; sparse matrices; tensors; C library; Khatri-Rao product; SPLATT; cache tiling; cache-friendly reordering; data structure; matricide tensor multiplication; multidimensional arrays; parallel sparse tensor-matrix multiplication; shared-memory parallelism; sparse tensor factorization; three-mode tensors; Algorithm design and analysis; Context; Data structures; Memory management; Parallel processing; Sparse matrices; Tensile stress; CANDECOMP; CPD; PARAFAC; Sparse tensors; parallel;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel and Distributed Processing Symposium (IPDPS), 2015 IEEE International
Conference_Location
Hyderabad
ISSN
1530-2075
Type
conf
DOI
10.1109/IPDPS.2015.27
Filename
7161496
Link To Document