Change to bzip2?

Ronny Buchmann ronny-vlug at vlugnet.org
Wed Feb 2 20:19:54 UTC 2005


On Wednesday 02 February 2005 17:04, Rudi Chiarito wrote:
> On Wed, Feb 02, 2005 at 10:32:41AM -0500, Sean Middleditch wrote:
> > > > I think staying with gzip is ok as it really is a good middle ground
> > > > between speed and disk compression ratio. bzip2 "feels" noticable
> > > > slower.
> > >
> > > Is that true on extraction or only on creation?
> >
> > Both.
>
> Then there's LZMA, which is even slower than bzip2 on compression, but
> faster and less memory-hungry on decompression. It also tends to
> obtain higher compression ratios and has a multithreaded implementation.
To show some numbers:
this is the current binary kernel

LZMA default
[ronny at bserv tmp]$ /usr/bin/time ./lzma <kernel.cpio >kernel.cpio.lzma
92.08user 0.31system 1:32.59elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+3809minor)pagefaults 0swaps
[ronny at bserv tmp]$ ls -lh kernel.cpio.lzma
-rw-rw-r--  1 ronny ronny 12M  2. Feb 21:02 kernel.cpio.lzma
[ronny at bserv tmp]$ /usr/bin/time ./lzma -d <kernel.cpio.lzma >/dev/null
5.02user 0.02system 0:05.05elapsed 100%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+997minor)pagefaults 0swaps

LZMA best compression
[ronny at bserv tmp]$ /usr/bin/time ./lzma -x <kernel.cpio >kernel.cpio.lzma
122.63user 0.29system 2:02.95elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+3809minor)pagefaults 0swaps
[ronny at bserv tmp]$ ls -lh kernel.cpio.lzma
-rw-rw-r--  1 ronny ronny 12M  2. Feb 21:06 kernel.cpio.lzma
[ronny at bserv tmp]$ /usr/bin/time ./lzma -d <kernel.cpio.lzma >/dev/null
5.03user 0.01system 0:05.04elapsed 100%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+997minor)pagefaults 0swaps

GZIP default
[ronny at bserv tmp]$ /usr/bin/time gzip  <kernel.cpio >kernel.cpio.gz
5.52user 0.22system 0:05.76elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+162minor)pagefaults 0swaps
[ronny at bserv tmp]$ ls -lh kernel.cpio.gz
-rw-rw-r--  1 ronny ronny 16M  2. Feb 21:07 kernel.cpio.gz
[ronny at bserv tmp]$ /usr/bin/time gzip -d <kernel.cpio.gz >/dev/null
0.75user 0.00system 0:00.76elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+129minor)pagefaults 0swaps

GZIP -9
[ronny at bserv tmp]$ /usr/bin/time gzip -9 <kernel.cpio >kernel.cpio.gz
17.38user 0.21system 0:17.61elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+162minor)pagefaults 0swaps
[ronny at bserv tmp]$ ls -lh kernel.cpio.gz
-rw-rw-r--  1 ronny ronny 16M  2. Feb 21:08 kernel.cpio.gz
[ronny at bserv tmp]$ /usr/bin/time gzip -d <kernel.cpio.gz >/dev/null
0.74user 0.01system 0:00.75elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+129minor)pagefaults 0swaps

BZIP2 default (-9)
[ronny at bserv tmp]$ /usr/bin/time bzip2  <kernel.cpio >kernel.cpio.bz2
16.79user 0.20system 0:17.04elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+1741minor)pagefaults 0swaps
[ronny at bserv tmp]$ ls -lh kernel.cpio.bz2
-rw-rw-r--  1 ronny ronny 14M  2. Feb 21:09 kernel.cpio.bz2
[ronny at bserv tmp]$ /usr/bin/time bzip2 -d <kernel.cpio.bz2 >/dev/null
6.20user 0.04system 0:06.25elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+1016minor)pagefaults 0swaps

BZIP2 -1
[ronny at bserv tmp]$ /usr/bin/time bzip2 -1 <kernel.cpio >kernel.cpio.bz2
13.78user 0.21system 0:14.00elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+395minor)pagefaults 0swaps
[ronny at bserv tmp]$ ls -lh kernel.cpio.bz2
-rw-rw-r--  1 ronny ronny 16M  2. Feb 21:12 kernel.cpio.bz2
[ronny at bserv tmp]$ /usr/bin/time bzip2 -d <kernel.cpio.bz2 >/dev/null
4.12user 0.03system 0:04.16elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+230minor)pagefaults 0swaps

Looking at these numbers I think gzip is still the best compromise

-- 
http://LinuxWiki.org/RonnyBuchmann




More information about the fedora-devel-list mailing list