Parallel Tensor Compression for Large-Scale Scientific Data

Abstract

As parallel computing trends towards the exascale, scientific data produced by high-fidelity simulations are growing increasingly massive. For instance, a simulation on a three-dimensional spatial grid with 512 points per dimension that tracks 64 variables per grid point for 128 time steps yields 8 TB of data. By viewing the data as a dense five-way tensor, we can compute a Tucker decomposition to find inherent low-dimensional multilinear structure, achieving compression ratios of up to 10000 on real-world data sets with negligible loss in accuracy. So that we can operate on such massive data, we present the first-ever distributed-memory parallel implementation for the Tucker decomposition, whose key computations correspond to parallel linear algebra operations, albeit with nonstandard data layouts. Our approach specifies a data distribution for tensors that avoids any tensor data redistribution, either locally or in parallel. We provide accompanying analysis of the computation and communication costs of the algorithms. To demonstrate the compression and accuracy of the method, we apply our approach to real-world data sets from combustion science simulations. We also provide detailed performance results, including parallel performance in both weak and strong scaling experiments.

Publication
In IPDPS’16: Proceedings of the 30th IEEE International Parallel and Distributed Processing Symposium
Date
Citation
W. Austin, G. Ballard, T. G. Kolda. Parallel Tensor Compression for Large-Scale Scientific Data. In IPDPS’16: Proceedings of the 30th IEEE International Parallel and Distributed Processing Symposium, Chicago, IL (2016-05-23 to 2016-05-27), pp. 912-922, 2016. https://doi.org/10.1109/IPDPS.2016.67

Comments

Conference received 496 papers and accepted only 114 papers (23%).

BibTeX

@inproceedings{AuBaKo16,  
author = {Woody Austin and Grey Ballard and Tamara G. Kolda}, 
title = {Parallel Tensor Compression for Large-Scale Scientific Data}, 
booktitle = {IPDPS'16: Proceedings of the 30th IEEE International Parallel and Distributed Processing Symposium},
venue = {Chicago, IL},
eventdate = {2016-05-23/2016-05-27}, 
pages = {912-922}, 
month = {May}, 
year = {2016},
doi = {10.1109/IPDPS.2016.67},
eprint = {1510.06689},
}