@inproceedings{7295c041cd434279a6705e36b022cfd2,
title = "Efficient and effective sparse tensor reordering",
abstract = "This paper formalizes the problem of reordering a sparse tensor to improve the spatial and temporal locality of operations with it, and proposes two reordering algorithms for this problem, which we call BFS-MCS and Lexi-Order. The BFS-MCS method is a Breadth First Search (BFS)-like heuristic approach based on the maximum cardinality search family; Lexi-Order is an extension of doubly lexical ordering of matrices to tensors. We show the effects of these schemes within the context of a widely used tensor computation, the CANDECOMP/PARAFAC decomposition (CPD), when storing the tensor in three previously proposed sparse tensor formats: coordinate (COO), compressed sparse fiber (CSF), and hierarchical coordinate (HiCOO). A new partition-based superblock scheduling is also proposed for HiCOO format to improve load balance. On modern multicore CPUs, we show Lexi-Order obtains up to 4.14× speedup on sequential HiCOO-Mttkrp and 11.88× speedup on its parallel counterpart. The performance of COO- and CSF-based Mttkrps also improves. Our two reordering methods are more effective than state-of-the-art approaches. The code is released as part of Parallel Tensor Infrastructure (ParTI!): https://github.com/hpcgarage/ParTI.",
keywords = "HiCOO, Hierarchical coordinate, Reordering, Sparse tensor, Tensor decomposition",
author = "Jiajia Li and Bora U{\c c}ar and V. {\c C}ataly{\"u}rek and Jimeng Sun and Kevin Barker and Richard Vuduc",
note = "Publisher Copyright: {\textcopyright} 2019 ACM.; 33rd ACM International Conference on Supercomputing, ICS 2019, held in conjunction with the Federated Computing Research Conference, FCRC 2019 ; Conference date: 26-06-2019",
year = "2019",
month = jun,
day = "26",
doi = "10.1145/3330345.3330366",
language = "English (US)",
series = "Proceedings of the International Conference on Supercomputing",
publisher = "Association for Computing Machinery",
pages = "227--237",
booktitle = "ICS 2019 - International Conference on Supercomputing",
address = "United States",
}