My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members

comprox是一个跨平台的、基于命令行操作的通用数据压缩程序,使用的是静态字典+LZ77+算术编码的算法。

目前comprox还处在尚未成熟的阶段,所以最好不要用它对重要的数据进行操作,防止数据丢失。


Large Text Compression Benchmark (enwik8)测试结果:(AMD-E350, 1.6GHz x2, clang -O4)

program original size compressed size comp time decomp time
gzip 100000000 36518322 20.3s 2.6s
bzip2 100000000 29008758 43.1s 18.5s
comprox (m=100) 100000000 25541564 51.0s 13.1s
xz(lzma) -6 100000000 26371635 3m44.1s 6.7s
xz(lzma) -9 100000000 24865244 4m32.6s 6.4s


升级日志:

v0.1.0:

v0.1.1: 修正了当压缩后文件长度大于原文件时可能导致的程序崩溃。

v0.2.0: 用更高阶的算术编码改进了压缩率。

v0.3.0: 引入了静态字典,并取消多线程支持以获得更高的压缩率。

v0.3.1: 修正了静态字典中可能导致解压文件缺少最后几个字节的BUG。

v0.3.2: 去掉了刷enwik*的专用hack,源代码改为多文件形式,release中不再包含执行文件。

v0.4.0: 使用非等长编码处理LZ77算法中的偏移值,进一步改进压缩效率。

v0.5.0: 重构了部分关键代码,改进了预测模型,压缩比和速度都有所提高。

Powered by Google Project Hosting