当前位置: 首页 > 工具软件 > QuickLZ > 使用案例 >

QuickLZ -- 一个号称世界压缩速度最快的压缩库

戚永福
2023-12-01

 

QuickLZ 是一个号称世界压缩速度最快的压缩库,并且也是个开源的压缩库,其遵守 GPL 1, 2 或 3协议。

 

在QuickLZ的官网上有个关于QuickLZ的测试:

 

 

Library Level Compressed size Compression Mbyte/s Decompression Mbyte/s
QuickLZ C 1.5.0147.9% 308 358
QuickLZ C 1.4.0147.9% 272 332
QuickLZ C 1.4.0242.3% 131 309
QuickLZ C 1.4.0340.0% 31 516
QuickLZ C# 1.4.0147.9% 133 132
QuickLZ Java 1.4.0147.9% 127 95
LZF 3.1UF54.9% 204 396
LZF 3.1VF51.9% 193 384
FastLZ 0.1.0153.0% 173 442
FastLZ 0.1.0250.7% 167 406
LZO 1X 2.02148.3% 169 434
zlib 1.22137.6% 55 234

 

 

在这里,我也对QuickLZ和zlib进行一个对比的测试,看看是不是真的那么快那么好。

QuickLZ有个前端程序叫qpress,可以在QuickLZ的官网上下载下来进行测试。而zlib没有前端程序,所以要自己写一个。

zlib 的测试程序可以根据zlib 的源码中的一个例子进行改写,如下:

 

 

在测试zilib是采用了两个压缩方式,一个是最快的压缩(Z_BEST_SPEED)和一个是默认的压缩(Z_DEFAULT_COMPRESSION),在main函数中可以看到。

 

下面是我在linux下的ntfs分区中,对一个1G的有着fat32文件系统的文件(这个1G的文件是我在windows下用winhex对一个1G的fat32的分区进行拷贝得到的文件)进行压缩后的测试的结果:

QuickLZ采用了稳定的1.4.1版,zlib采用了稳定的1.2.3版。

 

                    quickLZ (最低压缩               zlib(默认压缩                          zlib (最低压缩率)
                    率)version 1.4.1                    率)version 1.2.3
time              Compressed                       real 2m5.507s                      real 1m23.828s
                  1,075,838,976 bytes             user 1m44.079s                 user 1m2.476s
                  in 1 file(s) into                      sys 0m3.164s                      sys 0m2.948s
                 598,244,013 bytes
                 real 0m29.478s
                 user 0m10.209s
                 sys 0m2.484s
压缩后大小        598244013(571M )           484103258(462M )            510911735(488M )

在上面的测试中,我们可以看到,quickLZ的压缩率要比zlib 的低,但压缩率还是可以的,而压缩的速度确实比zlib 的快了很多。quickLZ在最低压缩率的情况下压缩1G的文件,用了29.478秒,压缩到571M,而zlib在默认的压缩率下使用了2分5.507秒,压缩到462M,在zlib在最低压缩率下,也使用了1分23.828秒,压缩到488M。

 

看来QuickLZ的压缩速度确实并非浪得虚名。

 

QuickLZ的官网:http://www.quicklz.com/

zlib的官网:       http://www.zlib.net/

 

 

 

 

 

 

 

 

 类似资料: