Maximal practical compression: WinRK, LPAQ, CCM(x), UHARC, FreeArc, 7-zip, Squeez and Durilca’Light

Among modern compressors there are ones oriented to ultimate compression, but unacceptable slow (1-100 KB/s): paq, uda, durilca, slim. At the other scale side there are rapid archivers with medium compression and wide functionality: rar, sbc, ace. In the gap between them are programs with particular qualities of maximal practical compression. It’s WinRK/rolz3, LPAQ, CCM(X), UHARC, FreeArc, 7-zip, Squeez and DURILCA’light. I assay to arrange programs in order of compression ratio decrease, but as will readily be observed it’s sufficiently hard-grained group — without considering multimedia-compession, difference in archive sizes among themselves vary in between 10% and compression results could depend more on exact compressed data files than general tendency. Also mention that lpaq, ccm, ppmd, durilca, uharc -mx are symmetric algorithms (i.e. decompression needs as much time as compression) and all the others asymmetrical (decompression is 10 or more times faster). Incidentally all listed in this article speeds correspond to modern dual-core processors with 2.5 GHz frequency. Now let’s pass to characteristics of particular programs.

WinRK

WinRK supports a number of compression algorithms, but in this case we are interested solely in ROLZ3 in Best Asymmetric mode supporting best compression with acceptable decompression speed (more than 100 KB/s). As compared with ccm and uharc this program compress data files more slowly but decompress faster (speed order: compression 400 KB/s, decompression 2 МB/s). WinRK also supports SFX, multi volume archives, encryption. It has perfect GUI. In short WinRK seems to be excellent program. It has the only shortcoming — it is not working. During my tests in 10-20% of cases it crashes while building archive or couldn’t extract it. Maybe you will be more lucky (I have compressed huge file sets), but I strongly recommend not to use WinRK. Alas author abandoned this project.

LPREPAQ

LPREPAQ — it’s LPAQ completed with libraries precomp и PackJPG for recompression already compressed data (zip, pdf, gif, jpg etc.)

LPAQ

Symmetric algorithm with speed rate 350 KB/s. Per-file packer what means you have to use TAR for archive building. Shows best results at text files overranking all other programs in this review. The only program except 7-zip that doesn’t include multimedia compression.

CCMX

Symmetric algorithm with speed rate 800 KB/s. Per-file packer.

CCM

Symmetric algorithm with speed rate 1 MB/s, concede CCMX in compression 1-3%.

UHARC

In mode -m3 yield to 7-zip, so only high compression mode -mx is valuable. Symmetric algorithm with speed rate 400 KB/s. Maximum dictionary size is only 32 Mb, therefore when compressing large datasets (hundreds of Mb) UHARC’s compression ratio moves to the bottom edge of a spectrum (among other programs examined here). Archiver with basic set of features and SFX support. No archive update. Total size of files in archive is limited to 2Gb. There are GUI frontends that simplify operation with UHARC archives.

FreeArc

FreeArc supports LZMA, PPMD and multimedia compression algorithms with an automatic choice between them (by file extension) plus additional filters, therefore outperforms 7-zip on a ratio and speed of compression: 1 MB/s packing, 2-20 MB/s unpacking (slower for PPMD, faster for LZMA). Such features as smart file ordering and 1GB dictionary makes the program especially efficient on large data sets where it moves to the top edge of spectrum. Inasmuch as compression method choice is based on file extension analysis it fails on files with unusual extensions and files without extensions. Rigorous archiver with rapid update of solid-archives, advanced encryption features, archive recovery, ftp/http access, plugins for FAR and Total Commander, linux version. But far not reliable as 7-zip.

7-ZIP

7-ZIP — default algorithm LZMA is highly asymmetric (600 KB/s pack, 30 MB/s unpack). Text files are better compressed by PPMD, which is symmetric algorithm (1.5 MB/s), unfortunately automatic selection of compression algorithm is not implemented. 64-bit version of 7-zip can create archives with dictionary up to 1Gb that still can be unpacked by 32-bit version. 7-zip has full-featured, though rather ascetic GUI; 64-bit and linux versions; supports sfx/installers, encryption, multi-volumes, solid-archives with adjustable block size. This combination of high functionality and reliability, high compression ratio, rapid decompression made 7-zip the most popular archiver among all the mentioned here.

SQUEEZ

SQUEEZ — speed is 400 KB/s pack, 10 MB/s unpack. Basic algorithm — LHA algorithm modification, with dictionary up to 32 Mb, amplified with PPMD for texts and number of filters with automatic switching among them. Rigorous archiver with nice GUI and 64-bit version. Supports all the modern features: encryption, volumes, recovery record, sfx, archives authentication (digital signature), logfile. The only non-free program in group, except WinRK.

DURILCA’light

DURILCA’light — nearly symmetrical algorithm with speed rate of 1.5 MB/s. It is basically PPMD algorithm improved with extra filters for text, executable, multimedia, table data compression. Option -t1 reorders data before compression grouping similar data together that increase compression ratio but 4 times decrease compression speed (decompression speed remains the same and even increase a little). This mode allows to deal with tar-files, where different types of data may be heavily mixed. Per-file packer.

Now let’s examine test results. For comparison we’ve also included archivers from other groups – both aimed on maximal compression and rapid ones.

First table is arranged according to Squeeze Chart test. Only results without ecm/precomp preprocessors was included to put all programs in one line. Besides I’ve subtracted results for multimedia files from totals because multimedia compressin is big topic on its own. Finally we have direct comparision of different archivers based on sufficiently typical data. However even in such kind it is impossible to speak, that the presented table reflects true in last instance. It shows only results of tests on large volume of mainly binary data:

ArchiverTime to pack, sec.Packed size, byteVersionMode
Super-compact
PAQ8o533.080941 221 391SSE2v2-7
WinRK334.566945 147 3153.0b3maximum
UDA95.5971 021 501 2230.301
Durilca1 053 264 5730.5-m1400 -o13
SLIM1 165 964 43023d-m800 -o16
Compact
WinRK13.4301 017 124 1843.0b3rolz-3 650mb
FreeArc3.4831 043 288 2540.40-mx
LPAQ14.8321 044 521 48318
CCMX6.0991 047 940 3351.23c7
FreeArc6.2831 059 427 4160.36-m7
7-zip4.0801 071 093 1964.47lzma:128mb/ppmd:1gb
Squeez12.7091 093 341 2055.632mb ultra
UHARC11.9041 113 177 8470.6b-mx -md32768
Fast
SBC6.5031 214 428 2220.970-m3 -b63 -os
WinRar2.4481 304 466 1533.70b5-m5
WinZip3.0481 422 735 06111.1

Second table is arranged with similarly prepared data from http://maxcompress.narod.ru/. This test characterised by rather small sizes of compressed files and too large percentage of executable files of which half of test data consists. As a result, LPAQ and FreeArc went down. UHARC went up as well as both programs having good dedicated executable files compression algorithms — Durilca/Durilca’Light and 7-zip. Notice that WinRK and CCMX saved leadership in a group — these programs show constantly high results in any conditions. In this test WinRAR shows fairly good results, but don’t forget that while increasing data size WinRAR will lose positions due to limited dictionary size. Speeds in this test were recorded on one-core Celeron 2.8GHz:

ArchiverPack speed, KB/sUnpack speed, KB/sPacked size, byte
Paq 8 K (-8)1112 309 664
Durilca 0.5818312 842 139
Slim 0.23d272712 886 744
UDA 0.301212113 288 040
WinRK 3.0.3b Asymmetric8030013 965 155
Durilca 0.5 Light62586014 327 293
CCMx 1.23 (c 6)42042014 341 157
CCM 1.23 (c 6)50050014 474 879
Uharc 0.6b27032014 585 826
Lpaq1 (8)18518014 634 505
7-zip 4.52b710290014 635 135
FreeArc 0.40b810380014 849 852
Squeez 5.6175230014 904 005
WinRAR 3.701013160015 146 720
Uharc 0.6b (-m3)380280015 442 355
SBC 0.970rev2760190016 036 996
WinZip 11.1 (optimize)1100110016 069 337

Finally, being short of space, I will shortly name archiver’s chart in my own text compression test: LPAQ, CCMX, CCM, FreeArc, UHARC, Durilca’Light, 7-zip. This test contains medium-size filesets (30-100Mb) and include most spread text data types — html, sources and natural-language texts.

At the last end, a piece of advise column: if you want ultimate compression — get CCMX. Optimal combination of compression speed and ratio — CCM or FreeArc. Lot of features, GUI, speed and reliability — 7-zip. Ultimate feature set and nice GUI — Squeez.