@inproceedings{9af0d142ef014252ad99cbb0b6b7058a,
title = "Wavesz: A hardware-algorithm co-design of efficient lossy compression for scientific data",
abstract = "Error-bounded lossy compression is critical to the success of extreme-scale scientific research because of ever-increasing volumes of data produced by today{\textquoteright}s high-performance computing (HPC) applications. Not only can error-controlled lossy compressors significantly reduce the I/O and storage burden but they can retain high data fidelity for post analysis. Existing state-of-the-art lossy compressors, however, generally suffer from relatively low compression and decompression throughput (up to hundreds of megabytes per second on a single CPU core), which considerably restrict the adoption of lossy compression by many HPC applications especially those with a fairly high data production rate. In this paper, we propose a highly efficient lossy compression approach based on field programmable gate arrays (FPGAs) under the state-of-the-art lossy compression model SZ. Our contributions are fourfold. (1) We adopt a wavefront memory layout to alleviate the data dependency during the prediction for higher-dimensional predictors, such as the Lorenzo predictor. (2) We propose a co-design framework named waveSZ based on the wavefront memory layout and the characteristics of SZ algorithm and carefully implement it by using high-level synthesis. (3) We propose a hardware-algorithm co-optimization method to improve the performance. (4) We evaluate our proposed waveSZ on three real-world HPC simulation datasets from the Scientific Data Reduction Benchmarks and compare it with other state-of-the-art methods on both CPUs and FPGAs. Experiments show that our waveSZ can improve SZ{\textquoteright}s compression throughput by 6.9× ∼ 8.7× over the production version running on a state-of-the-art CPU and improve the compression ratio and throughput by 2.1× and 5.8× on average, respectively, compared with the state-of-the-art FPGA design.",
keywords = "Compression Ratio, FPGA, Lossy Compression, Scientific Data, Software-Hardware Co-Design, Throughput",
author = "Jiannan Tian and Sheng Di and Chengming Zhang and Xin Liang and Sian Jin and Dazhao Cheng and Dingwen Tao and Franck Cappello",
note = "Funding Information: We thank Xilinx for generous donations of software and hardware. This research was supported by the Exascale Computing Project (ECP), Project Number: 17-SC-20-SC, a collaborative effort of two DOE organizations?the Office of Science and the National Nuclear Security Administration, responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering and early testbed platforms, to support the nation?s exascale computing imperative. The material was supported by the U.S. Department of Energy, Office of Science, under contract DE-AC02-06CH11357, and supported by the National Oceanic and Atmospheric Administration under Grant No. NA18NWS46200438. Funding Information: We thank Xilinx for generous donations of software and hardware. This research was supported by the Exascale Computing Project (ECP), Project Number: 17-SC-20-SC, a collaborative effort of two DOE organizations—the Office of Science and the National Nuclear Security Administration, responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering and early testbed platforms, to support the nation{\textquoteright}s exascale computing imperative. The material was supported by the U.S. Department of Energy, Office of Science, under contract DE-AC02-06CH11357, and supported by the National Oceanic and Atmospheric Administration under Grant No. NA18NWS46200438. Publisher Copyright: {\textcopyright} 2020 Association for Computing Machinery.; 25th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2020 ; Conference date: 22-02-2020 Through 26-02-2020",
year = "2020",
month = feb,
day = "19",
doi = "10.1145/3332466.3374525",
language = "English (US)",
series = "Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP",
publisher = "Association for Computing Machinery",
pages = "74--88",
booktitle = "PPoPP 2020 - Proceedings of the 2020 25th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming",
address = "United States",
}