As HPC systems continue to grow to exascale, the amount of data that needs to be saved or transmitted is exploding. To this end, many previous works have studied using error-bounded lossy compressors to reduce the data size and improve the I/O performance. However, little work has been done for effectively offloading lossy compression onto FPGA-based SmartNICs to reduce the compression overhead. In this paper, we propose a hardware-algorithm codesign for an efficient and adaptive lossy compressor for scientific data on FPGAs (called CEAZ), which is the first lossy compressor that can achieve high compression ratios and throughputs simultaneously. Specifically, we propose an efficient Huffman coding approach that can adaptively update Huffman codewords online based on codewords generated offline, from a variety of representative scientific datasets. Moreover, we derive a theoretical analysis to support a precise control of compression ratio under an error-bounded compression mode, enabling accurate offline Huffman codewords generation. This also helps us create a fixed-ratio compression mode for consistent throughput. In addition, we develop an efficient compression pipeline by adopting cuSZ's dual-quantization algorithm to our hardware use cases. Finally, we evaluate CEAZ on five real-world datasets with both a single FPGA board and 128 nodes (to accelerate parallel I/O). Experiments show that CEAZ outperforms the second-best FPGA-based lossy compressor by 2.3X of throughput and 3.0X of ratio. It also improves MPI_File_write and MPI_Gather throughputs by up to 28.9X and 37.8X, respectively.
翻译:随着HPC系统继续增长到伸缩, 需要保存或传输的数据数量正在爆炸。 为此, 许多先前的工程已经研究过使用带有错误的损耗压缩机来降低数据大小并改进 I/ O 性能。 但是, 将损耗压缩有效卸到基于 FPGA 的智能计算机上以降低压缩管理量。 在本文中, 我们提议为FPGAs( 称为 CEAZ ) 的科学数据高效和适应性损失压缩压缩机( 称为 CEAZ ) 提供一个硬件- 编码器, 用于一个高效和适应性损失压缩的压缩压缩机。 这是第一个可以同时实现高压缩率和透化的丢失压缩机。 具体地说, 我们建议一种高效的Huffman编码方法, 可以根据各种具有代表性的科学数据集, 将损失压缩机的存储器自动更新到网上。 此外, 我们提出理论分析, 支持以错误的压缩机精密的压缩机校正法/, 使精密的Huffman 调比 。 这也有助于创建一个固定的MA X 压缩机的压缩机 。