[原创] ComZip阵列压缩与固实压缩对比测试
[ 2008-10-05 23:00:18 ]
引言/提要:阵列压缩功能是龙之梦工作室独创的最新压缩技术,借鉴磁盘阵列RAID的设计思想,在压缩多个同类型大文件(50MB以上)的时候,阵列压缩的压缩率显著高于固实压缩。
关键词:压缩软件,奥林匹克,算法优化,核心技术,核心竞争力
龙之梦工作室自主研发的ComZip超级压缩机,凭借在数据压缩方面的核心技术,在压缩率、压缩速度等硬指标上可与WinZip、WinRAR等著名软件抗衡。具体测试结果见《ComZip超级压缩机实测数据》,有关这个软件的技术介绍,请查看《欲与天公试比高——ComZip超级压缩机》。
阵列压缩功能是龙之梦工作室独创的最新压缩技术,借鉴磁盘阵列RAID的设计思想,超越了其它压缩软件所采用的固实压缩。固实压缩是以文件为压缩单元,而阵列压缩的单元则是簇(Cluster)。
在压缩多个同类型大文件(50MB以上)的时候,阵列压缩的压缩率显著高于固实压缩。
以下是ComZip、WinRAR、7-Zip的数据压缩对比测试。大家也可以用自己的测试数据,在龙之梦工作室网站下载ComZip超级压缩机免费版(v20081009以上版本)进行测试。
测试平台:14寸宽屏笔记本电脑
CPU:Intel 赛扬双核 T1400
主板:SiS 672芯片组
内存:1GB DDR2 533MHz
硬盘:120GB 5400转 SATA接口
显卡:集成
操作系统:Windows XP Professional SP2
虚拟内存:3GB
参与测试的ComZip版本是v20081009,该版本是集成了阵列压缩功能的首个发行版本。
对比测试用的压缩软件是WinRAR,采用最新版本3.71。这个版本已经支持并行多线程,比旧版本3.30的单线程有了显著的性能提高。
对比测试用的7-zip版本是4.57。7-zip是近年来的压缩软件新秀,号称压缩率最高,超过WinRAR等老牌压缩软件。
此次测试,并没有选用WinZip,主要是考虑到512KB的数据字典在几十上百MB的数据文件面前,实在难以创造出压缩率的奇迹。另外,一些使用了PAQ、PPM等压缩算法的软件也没有参与对比。这些算法确实可以达到更高的压缩率,但是压缩速度会大打折扣。在大型文件的压缩中,速度无疑是个重要因素,所以LZ算法为主体的高效压缩软件是首选。
测试中,WinRAR选定“固实压缩”,采用最大的4MB数据字典。7-Zip设置为最大压缩,使用32MB的数据字典。ComZip采用阵列压缩,数据字典同样使用32MB,阵列的簇大小设置为64KB,列数设为4。
测试数据:这次采用的是超过50MB的大文件,在这个尺度上,哪怕是7-zip的大数据字典也会感觉力不从心。文件目录如下:
日期 时间 大小 文件名
2008-08-13 18:04 527,467,008 dat_lamp.vdi
2008-08-12 12:31 527,467,008 dat_lamp_dev.vdi
2008-08-04 11:27 1,474,560 lamp.img
2008-08-13 18:04 347,095,552 sys_lamp.vdi
2008-08-12 12:31 411,058,688 sys_lamp_dev.vdi
这是4个不同的Linux系统硬盘映像和1个启动软盘映像,总容量达到1.68GB,全部文件都可以在虚拟机中正常运行。龙之梦工作室认为测试结果有一定的代表性,虽然不能完全排除数据的特殊性对测试结果的影响。同样,大家可以用自己的数据来测试看看。
测试数据简评:
从测试结果来看,ComZip所采用的阵列压缩,无论是压缩率还是压缩速度,都远远胜过WinRAR和7-zip的固实压缩。
面对动辄以GB计的大型数据文件,WinRAR的4MB数据字典实在是有心无力,难逃当年WinZip只有512KB数据字典的命运。7-zip依靠大容量数据字典提高压缩率,但也始终有个限度。ComZip则是改变了了压缩的方式,所以才充分利用了有限的数据字典,获得更好的压缩效果。
客观地说,ComZip只是在多个大型文件压缩这个单项上超越了7-zip,并不是全面胜出。事实上,ComZip和7-zip都是基于LZSS和算术编码的压缩算法,可算是师出同门。但因为算法实现的具体细节不一样,所以压缩率大致相同,略有出入。在通常的小文件压缩中,数据字典大小相同的情况下,7-zip仍然稍为占优,所以压缩率王者的称号还是属于7-zip。当然,ComZip也会继续改进。
对比项目 |
文件大小(字节) |
压缩耗时(秒) |
未压缩 |
1,814,562,816 |
0 |
WinRAR |
659,767,930 |
1,068 |
7-zip |
609,409,206 |
1,081 |
ComZip |
399,621,192 |
617 |
|
|
|