中文

Rapidgzip:利用缓存预取实现Gzip文件的并行解压与定位

分布式、并行与集群计算 2023-08-21 v1

摘要

Gzip是一种被广泛使用的文件压缩格式。尽管存在大量gzip实现,但只有pugz能够充分利用当前多核处理器架构进行解压。然而,pugz无法解压任意gzip文件。它要求解压流仅包含字节值9-126。在这项工作中,我们提出了pugz所用并行化方案的推广,该方案可可靠地应用于任意gzip压缩数据而不牺牲性能。我们表明,通过实现基于缓存和并行化预取器的架构,可以去掉pugz对文件内容的要求。该架构能安全处理错误的解压结果,这些结果可能在线程通过试错方式在gzip文件中部开始解压时出现。使用128核,我们的实现对于gzip压缩的base64编码数据达到8.7 GB/s的解压带宽,是单线程GNU gzip的55倍加速,对于Silesia语料库达到5.6 GB/s,是GNU gzip的33倍加速。

关键词

引用

@article{arxiv.2308.08955,
  title  = {Rapidgzip: Parallel Decompression and Seeking in Gzip Files Using Cache Prefetching},
  author = {Maximilian Knespel and Holger Brunst},
  journal= {arXiv preprint arXiv:2308.08955},
  year   = {2023}
}

备注

HPDC'23