Re: [kernel.org users] XZ Migration discussion

From: Stefan Richter
Date: Sat Feb 13 2010 - 18:31:45 EST


Jean Delvare wrote:
> For my testing, I have been using the slowest machine I still have
> available here: a Pentium 166 MMX, with 64 MB of memory and a slow hard
> disk drive. I've been writing down the duration of each task it took to
> boot kernel 2.6.27.45 on this machine. I did this for both .gz and .bz2
> formats.
>
> Raw results are as follow (format=min:s):
>
> downloading linux-2.6.27.tar.bz2 5:01
> downloading patch-2.6.27.45.bz2 0:02
> unpacking linux-2.6.27.tar.bz2 7:28
> applying patch-2.6.27.45.bz2 1:21
> ----------------------------------------------
> total for bz2 13:52
>
> downloading linux-2.6.27.tar.gz 6:23
> downloading patch-2.6.27.45.gz 0:02
> unpacking linux-2.6.27.tar.gz 3:20
> applying patch-2.6.27.45.gz 1:10
> ----------------------------------------------
> total for gz 10:55
>
> So the gz option is unsurprisingly faster, setting up the source tree
> takes almost 3 minutes less (-21%).

If the download link had been slower than about 75 kB/s, the bz2 option
would have been faster even on this old machine.

With xz, download would be faster than bz2 and decompression would be
somewhere between bz2 and gz --- at least on machines without notable
memory constraints. xz's decompressor is more memory hungry than
bzip2's one as far as I understand their manual pages. But at the
default xz compressor setting of -6, the decompressor will still use
just 10 MB and should therefore not cause even your 64 MB machine to
swap all the time during decompression.

> Then the (common) build and installation times:
>
> building 117:26
> installing modules 0:12
> ----------------------------------------------
> total 117:38
>
> This is a customized kernel, as small as I could do, with almost no
> features and the minimal set of drivers. As you can see, the build time
> is one order of magnitude greater than the tree setup time. Comparing
> the total times from download to install between bz2 and gz:
>
> bz2: 13:52 + 117:38 = 131:30
> gz: 10:55 + 117:38 = 128:33
>
> Compared to bz2, gz saves... 2% on the overall time. As a conclusion, I
> think we can plain discard the argument "I need .gz because my machine
> is slow" from now on. It simply doesn't hold.

Yep, whether the target machine is meant to compile the kernel or to be
used to browse the source code (with a bare minimum of comfort), the
hardware resources required for either task mean that there isn't such a
great difference between gz, bz2, xz WRT resource requirements at the
receivers, except that xz goes easiest on network bandwidth and disk
utilization.
--
Stefan Richter
-=====-==-=- --=- -==-=
http://arcgraph.de/sr/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/