Perbandingan Software Kompresi/Compression untuk Berbagai Jenis File

Summary of the multiple file compression benchmark tests


File type : Multiple file types (46 in total)
# of files to compress in this test : 510
Total File Size (bytes) : 316.355.757
Average File Size (bytes) : 620,305
Largest File (bytes) : 18,403,071
Smallest File (bytes) : 3,554

This test is designed to model 'real-world' performance of lossless data compressors. The test set contains a mix of different file types which are chosen with 'What do people use archivers for the most' in mind. The testset should contain data, weighted (in both type and proportion of files in the set) by how often these files are used for compression by normal users using compression software. So for example there will be more txt files then .ocx files in the set (yes, this is arbitrary). The set contains 100's of files and has a total size of over 300 Mb. The idea of a large collection is filtering out the 'noise'. A compressor might perform bad on 1 or 2 filetypes, but on a very large collection it will not hurt as much.

Some programs like CCM and BZIP2 can only compress one file at a time. For these programs a single TAR-file is created containing all files. The files in this TAR-file are ordered alphabetically on suffix, then name. Results of these compressors are marked with an 'Y' in the tarred column.

The testset consists of the following file types :

Filetype(s) Description % of total # of files
TOC, MBX Eudora mailboxes 12.31 16
EXE, DLL, OCX, DRV Executables 10.99 35
TXT, RTF, DIC, LNG Text files in several languages 10.21 41
BMP, TIFF Bitmaps/TIF images 7.88 15
LOG Log files 6.34 6
HTM, PHP HTML files 6.13 19
DOC MS Word files 6.08 30
C, CPP, PAS, DCU Source Code 6.00 235
MDB, CSV Databases 4.26 7
HLP Windows Help files 4.23 7
CBF, CBG Precompressed chess-databases 3.55 2
WAV Wave soundfiles 3.45 9
XLS XLS Spreadsheets 2.41 16
PDF Adobe Acrobat document 1.59 6
TTF True Type Fonts 1.15 15
DEF Virus definition files 1.10 3
JPG, GIF Image files 0.53 9
CHM Precompressed help files 0.49 2
INI, INF INI files 0.42 10
Others DAT,JAR,M3D,SYS,PPT,MAP,WP,RLL,RIB.. 10.88 27

Considering the fact it's supposed to be a 'real-world' test I will not look at the best possible (command-line or gui) switch combination to use for optimal compression, but only test a limited set as 'normal users' would do. For 7-zip this means for example I will use the GUI and select the Ultra compression method (which can be easily beaten with some good command line switches), WinRar will be tested with max dictionary size and solid archiving etc. Programs are allowed to use a maximum of 800 MB memory and must finish the compression stage within 12h. Compressed size must be 50% or less compared to the original size to be listed on MFC.

For my single file tests I got lots of requests to add the compression time to the tables. I did not do this for the reasons stated in the single file summary file, but I'm planning to measure compression times for this multiple file test!. I also decided to make this testset 'non public', so it's harder for developers to tune their program towards this specific test. I think this is the most fair way to get 'real life' performance tests.

Scoring system: The program yielding the lowest compressed size is considered the best program. The most efficient (read:use full) program is calculated by multiplying the compression + decompression time (in seconds) it took to produce the archive with the power of the archive size divided by the lowest measured archive size. The lower score the better. The basic idea is a compressor X has the same efficiency as compressor Y if X can compress twice as fast as Y and resulting archive size of X is 10% larger than size of Y. (Special thanks to Uwe Herklotz to get this formula right)

  score_X = POWER(2; ((size_X / size_TOP) - 1) / 0,1) * time_X    with  score_X     efficiency score for a certain compressor X        time_X      time elapsed by compressor X (comp + decomp time)        size_X      archive size achieved with compressor X        size_TOP    archive size by top archiver (smallest benchmark result)  
Formula to calculate compressor efficiency based on compressed size and compression time
"0,1" represents 10% and power of 2 ensures that for each 10% worse results (compared  with top) the time is doubled, so any archiver (except top compressor) will get a  penalty on time. The score of top compressor is always equal to its time value.  

google_protectAndRun("ads_core.google_render_ad", google_handleError, google_render_ad);


Results sorted on compressor efficiency

Pos Program Switches used TAR Q6600 Compressed Compression Comp time Decomp time Efficiency
Size (bytes) Ratio (%) (sec) (sec) lower is better
000 TESTSET N Y 316355757 0.00
0
0 0
001 FreeARC 0.666 (none) N Y 81234951 74.32
24.1
11.8 289
002 FreeARC 0.666 -m3 N Y 85905882 72.85
13.6
10.5 326
003 FreeARC 0.666 -m2 N Y 91650028 71.03
6.9
7.8 376
004 NanoZip 0.08a -cDp N Y 90823973 71.29
20.3
7.1 640
005 FreeARC 0.666 -mx N Y 78406220 75.22
83.9
33.5 691
006 WinRAR 3.91 Normal solid 4096Kb N Y 90402898 71.42
36.3
6.1 945
007 WinRAR 3.91 Normal N Y 91995231 70.92
29.6
6.1 949
008 NanoZip 0.08a (none) N Y 78598663 75.15
136.3
23.2 958
009 NanoZip 0.08a -cO N Y 75586875 76.11
195
40 1011
010 7-Zip 9.15 Norm LZMA2 16Mb ws=32 N Y 88580415 72.00
49.5
8.2 1050
011 WinRAR 3.91 Best solid 4096Kb N Y 86669536 72.60
48.6
26.3 1102
012 CCM 1.30c 6 Y Y 77926922 75.37
107
103 1171
013 WinRK 3.1.2 Normal N Y 78882890 75.07
157
33.5 1181
014 FlashZIP 0.99b8 -m1 N Y 94690080 70.07
20.2
12.9 1187
015 CCM 1.30c (none) Y Y 78598980 75.15
102
98 1202
016 SBC 0.970 rev3 -b9 N Y 85740265 72.90
60
33 1235
017 SBC 0.970 rev3 (none) N Y 86245288 72.74
57
33 1264
018 WinRK 3.1.2 Fastest N Y 90821411 71.29
30.9
23.7 1274
019 CCMx 1.30c 6 Y Y 77079949 75.64
130
126 1300
020 CSC 3.2a6 -m3 Y Y 93295468 70.51
35.8
9.2 1382
021 7-Zip 9.15 Ultra LZMA2 64Mb 3thr N Y 87209288 72.43
92
9.5 1586
022 SBC 0.970 rev3 -m3 -b62 N Y 84736176 73.21
102
40 1686
023 WINZIP 14 Zipx Best Method N Y 86276462 72.73
95
27.5 1726
024 WinACE 2.69 Norm solid ace20 N Y 89742715 71.63
74
12.3 1787
025 DURILCA light 0.5 -m800 -t1 N Y 81666474 74.19
155
76 1951
026 NanoZip 0.08a -cc -m800m N Y 69886947 77.91
448
432 2011
027 StuffIt 14.0 Auto filetype L16 M30 BP E N Y 90125515 71.51
30.1
67 2098
028 WinACE 2.69 Max 4096Kb solid ace20 N Y 88485215 72.03
108
12.3 2166
029 ACE 2.6 -m5 -d4096 N Y 88486031 72.03
109
12.9 2195
030 SQUEEZ 5.63 Ultra 32Mb M E Solid N Y 83565058 73.59
181
29.6 2196
031 StuffIt 14.0 BWT L3 M23 BP N Y 89683391 71.65
32.3
78.2 2273
032 FlashZIP 0.99b8 -m2 -c7 N Y 92635469 70.72
65.3
16.7 2340
033 SLUG X (none) Y Y 112286383 64.51
4.4
5.2 2427
034 CTXf 0.75 (none) N N 90038884 71.54
66
48 2439
035 DGCA 1.10 (none) N N 89834304 71.60
83
34 2447
036 SQUEEZ 5.63 Norm 4Mb M E Solid N Y 94082622 70.26
54.3
19.2 2463
037 StuffIt 14.0 Auto Inline L9 M30 BP E N Y 89310142 71.77
35.4
89.8 2471
038 COMPRESSIA 1.0b sol dict 15 Mb N N 88152784 72.13
86
62 2568
039 CTXf 0.75 -me N N 88357992 72.07
83
64 2610
040 Tornado 0.4a (none) Y Y 105742922 66.57
13.9
8.1 2690
041 RZM 0.07h (none) Y N 84030374 73.44
230
19 2734
042 SQUEEZ 5.63 Max 8Mb M E Solid N Y 87695358 72.28
155.7
19.2 2885
043 UHARC 0.6b (none) N Y 84954506 73.15
209
33 2945
044 BSC 2.2.5 (none) Y Y 102373221 67.64
19.9
15.4 2970
045 UHARC 0.6b -mx -md32768 -mm+ N Y 78344876 75.24
278
234 2991
046 WINIMP 1.21 1 Normal MM 4Mb B=600Kb N Y 99638862 68.50
34.2
14.1 3000
047 BSSC 0.95a (none) Y N 95811218 69.71
52
25 3127
048 JAR 1.02 (none) N N 101169071 68.02
37
9 3386
049 UHARC 0.6b -mz -md32768 -mm+ N Y 99251157 68.63
28.6
36 3843
050 LZTurbo 0.95 -43 Y Y 113898203 64.00
6.7
6.5 3991
051 DURILCA 0.5 -m800 -t1 N Y 72175578 77.19
738
657 4109
052 WINIMP 1.21 1 BEST MM 16Mb B=1020Kb N Y 97237727 69.26
72.3
14.1 4110
053 THOR 0.96 e5 Y Y 112275112 64.51
12.6
3.8 4141
054 LZTurbo 0.95 -59 N Y 93646784 70.40
126
7.2 4254
055 GRZipII 0.2.4 -b8m -a Y N 97484136 69.19
48
43 4449
056 CMM4 0.2b 26 Y N 82435458 73.94
250
256 4655
057 WinRK 3.1.2 High N Y 69003458 78.19
1311
980 4745
058 BMA 1.35b (none) N N 98728900 68.79
54
40 5277
059 Ultra7z Opt 0.05 (none) N Y 84932335 73.15
406
40.2 5416
060 Etincelle RC2 (none) Y Y 121778066 61.51
3.9
3.6 5438
061 WinTurtle 1.60 (none) N N 103567658 67.26
28
30 5571
062 WinTurtle 1.60 Solid N N 103129672 67.40
31
33 5856
063 LZPX(J) 1.2h (none) Y N 92075183 70.90
110
111 5927
064 LZPX(J) 1.2h -8 Y N 91451359 71.09
119
118 5931
065 Blizzard 0.24b (none) Y N 98296282 68.93
60
52 5992
066 Tornado 0.4a -11 Y Y 99959838 68.40
87
8.1 6120
067 BIT 0.7 (none) Y Y 83321888 73.66
305
298 6121
068 LPAQ8 8 Y N 78704186 75.12
508
511 6195
069 BMA 1.35b -m16m -ax -mx N N 95284418 69.88
101
61 6204
070 BA 1.01 (none) Y N 99873098 68.43
59
40 6310
071 PPMonstr J -m800 -o32 N Y 77699686 75.44
587
593 6417
072 PPMonstr J (none) N Y 78443862 75.20
568
573 6739
073 DURILCA light 0.5 (none) N Y 96823565 69.39
71
80 6861
074 PPMd var J rev.1 -m256 -o16 N Y 96737515 69.42
73
80 6885
075 DARK 0.51 (none) N N 100877062 68.11
60
38 6983
076 RINGS 1.6 5 Y Y 105796514 66.56
28.8
28.4 7036
077 BIX 1.00 b7 (none) N Y 99694432 68.49
101
11.7 7042
078 DARK 0.51 -b128m N N 100785450 68.14
61
39 7053
079 GRZipII 0.2.4 (none) Y N 101686370 67.86
48
45 7249
080 BALZ 1.15 ex Y Y 99123753 68.67
108
21.3 7584
081 MNZIP (none) Y N 98488045 68.87
111
28 7597
082 THOR 0.96 e3 Y Y 124588656 60.62
3.8
3.9 7628

Comments


apaan lg ni,,

sent from: Opera/9.80 (J2ME/MIDP; Opera Mini/4.2.14881Mod.by.Handler/21.529; U; en) Presto/2.5.25 Version/10.54


Logo Anton Blog
AntonBlog adalah blog pribadi Anton Hilman yang memuat segala info, catatan, tips, trik, artikel, tutorial dan lainnya yang diharapkan berguna untuk memajukan Teknologi Informasi di Padang atau Sumatera Barat khususnya dan Indonesia umumnya.
Contact Us

Anton Hilman
Griya Agro Lestari C4,
Padang
Sumatera Barat
Indonesia
25231
+62 852 63 401 463