PAQ (此处为官方网站)压缩器非常高效(如压缩文件大小)。这样做是以牺牲速度和内存使用为代价的(注意:这仅适用于某些实验性 PAQ 版本)。
PAQ 赢得了Hutter 奖和卡尔加里挑战赛。
注意:ZPAQ 开放标准日志归档是所有实验性 PAQ 库的巅峰之作。
ZPaQ 使用重复数据删除、多线程和一系列压缩算法(LZ77、BWT 和上下文混合)来实现高性能。
更新:为 ZPAQ 构建了一个 GUI 包装器(使用 .Net),称为 winzpaq。您可以在此处阅读发行说明并直接从该站点下载最新版本。截至本次编辑,它可以在 Windows 上运行,但从发行说明看来,它也可以在 Linux 上运行(因为 Mono)。
更新:我将解决标准列表:
- 是的,大多数版本的 PAQ 都会这样做(paq8hp12any是 PAQ8hp 的专用版本,它特别声明它不会压缩或创建目录)。
- 应设计为高效,输入文件大小在 1 到 200 MB 之间。
- 该基准测试表明,不同的 PAQ 实用程序能够将 100 MB enwik8 文本文件(用于大文本压缩基准测试)压缩到小于 20 MB(而相同的基准测试显示 ZIP 在 9 级压缩时约为 36 MB)。
- ZPAQ(它实际上是所有实验性 PAQ 库的巅峰之作,被放入通用压缩实用程序中)支持密码加密(在 6.44 版的历史部分中提到了它)。
- 在大多数情况下,压缩文本和媒体文件(mp3、exe、电影、照片)而不会使它们变大。
- 根据ZPAQ官方网站,zpaq 是免费和开源的(GPL v3)。
- 压缩文件所需的时间不是一个非常重要的标准,只要它在“合理”的时间内完成(我的意思是,在典型的台式计算机上几个小时可能几百个就可以了兆的输入数据,但几百年可能是不可接受的)。
- 速度取决于您使用的 PAQ 版本。当我一直在探索这些以改进这个答案时,我注意到 ZPAQ 库已经大大提高了速度,并且仍然具有接近一些慢得多的实验库的压缩比。基于 ZPAQ 库,这里有一个很好的基准:
以下比较来自10 GB 基准测试(83,437 个文件和目录中的 10 GB),在 Ubuntu Linux 中使用 Core i7 M620、2.66 GHz、4 GB 备份到外部 USB 硬盘驱动器的默认设置。
Archiver Size Compress Extract License
-------- ------- -------- ------- -------
zip 4844 MB 1206 sec 229 sec Free, open source with specification
rar 4493 MB 1423 sec 239 sec Commercial, unrar is free and open source
7zip 3892 MB 6593 sec 472 sec Free, open source
freearc 3711 MB 1448 sec 422 sec Free, open source
zpaq 3825 MB 379 sec 249 sec Free, open source with specification