Bug#549681: mkvmlinuz: use xz to compress vmlinuz-boxed initrd
On Sun, Jul 01, 2012 at 11:03:02AM -0400, Milan Kupcevic wrote:
> On 07/01/2012 07:05 AM, Touko Korpela wrote:
> >> ...
> >> +if test "$post_2_6_38"; then
> >> + XZ="xz --check=crc32 -8"
> >> +else
> >> + XZ=false
> >> +fi
> >
> > From xz(1) manual page (you can ignore DecMem):
> > Preset DictSize CompCPU CompMem DecMem
> > -0 256 KiB 0 3 MiB 1 MiB
> > -1 1 MiB 1 9 MiB 2 MiB
> > -2 2 MiB 2 17 MiB 3 MiB
> > -3 4 MiB 3 32 MiB 5 MiB
> > -4 4 MiB 4 48 MiB 5 MiB
> > -5 8 MiB 5 94 MiB 9 MiB
> > -6 8 MiB 6 94 MiB 9 MiB
> > -7 16 MiB 6 186 MiB 17 MiB
> > -8 32 MiB 6 370 MiB 33 MiB
> > -9 64 MiB 6 674 MiB 65 MiB
> >
> > Better to use default setting "-6" that has lower memory requirement.
> >
>
> Here is timing for re-compression from gzip to xz on Pegasos II with
> Freescale 7447 1GhZ processor and 1Gb RAM:
Use of -8 option isn't a good thing for systems having only 512 Mib or less
memory. This operation shouldn't force to use slow swap space or OOM.
>
> set time compressed size
> -9 1m43.962s 9.5MB
> -8 1m44.824s 9.5MB
> -6 1m35.097s 9.6MB
> -3 1m10.080s 10.6MB
> -2 0m45.609s 10.7MB
> -0 0m19.286s 11.1MB
>
> I've originally decided to go with -8, mainly because the same preset is
> used in mkinitramfs form initramfs-tools package. It may be worth
> hearing arguments about the timing given that all presets currently
> produce vmlinuz smaller than the 12MB limit, but the compression time is
> very different.
Your size numbers show that -8 produces only marginally smaller images.
If mkinitramfs (initramfs-tools) uses -8 for xz compression, it should be
changed too.
Reply to: