Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Antonio Diaz Diaz <ant_diaz-XX8WhzKwCrQxAGwisGp4zA <at> public.gmane.org>
Subject: Re: performance: gzip, lzip, xz
Newsgroups: gmane.comp.compression.lzip.bugs
Date: Wednesday 7th October 2009 23:48:35 UTC (over 8 years ago)
Hello,

John Reiser wrote:
> I ran a comparison of gzip, lzip-1.7, and xz-4.999.9-0.1.beta.

Lzip 1.8 (released more than a month ago) compresses faster than 1.7.

> lzip has an advantage in smaller memory size needed for decompression
> (in this case 8MiB for lzip vs 64MiB for xz)
> but xz is better than lzip in compression speed and compression size.

It depends on what values for dictionary size and match length, you 
choose. Mappings from options -1..-9 to those parameters are different 
in lzip and xz. Other files are better compressed by lzip than by xz. 
Just try the -m and -s options of lzip to see what I mean.


> xz offers filters today; lzip may have filters in the future.

If filters prove to be useful, they will probably be implemented as part 
of zutils[1]. This way those filters could be used with any compressor 
or archiver without having to reimplement them every time.
[1] http://www.nongnu.org/zutils/zutils.html

Lzip follows the unix philosophy of "do one thing, and do it well"[2]. 
Lzip is the tool and format lzma-alone should have been from the very 
beginning.
[2] 
http://lpar.ath0.com/2009/09/25/documentation-as-an-indicator-of-code-quality/

By contrast xz is an experiment without a clear goal, (with its not yet 
fully implemented archiver-like format and filters), as proved by its 
four years of development without a stable version. Experiments are 
good, but not for general use.


> Does lzip offer other advantages?

Lzip offers maturity, (it is only a reimplementation of a well tested 
algorithm), reliability, simplicity and long term stability.


> What is the comparision for detecting and recovering damaged files?

Integrity checking reliability is better in lzip that it is in gzip. 
Lzip uses 64 bits for file size against the 32 bits of gzip, and also 
stores the member size, which gzip does not. Last time I checked, 
integrity checking was optional in xz.

Lzip can safely recover, with lziprecover, the undamaged members of a 
multimember file in case of file damage. Lzip can also recover in 
average about half the data of damaged members.

I don't know about recovery of damaged xz files, but given its complex 
format I think it should be rather difficult.


Regards,
Antonio.
 
CD: 3ms