[haiku-development] Re: hpkgs and compression

  • From: Fredrik Holmqvist <fredrik.holmqvist@xxxxxxxxx>
  • To: haiku-development <haiku-development@xxxxxxxxxxxxx>
  • Date: Mon, 10 Mar 2014 19:04:12 +0100

2014-03-10 18:35 GMT+01:00 Jonathan Schleifer
<js-haiku-development@xxxxxxxxxxx>:
> * Store the data uncompressed in the hpkg itself and block-align it.
> * Compress the whole hpkg on the repository server (e.g. using xz or bzip2). 
> This also means that similar files can be compressed much better.
> * Decompress the hpkg on the fly when the package is downloaded. This will 
> reduce the time to install a package to half the time in many cases! While 
> you download, the CPU is idle now, so it could decompress the data already 
> received instead of doing nothing. As only about half the data needs to be 
> transfered, this is a big speedup in package installation!
> * Use the current hpkg compression we have for the Live CD (optionally 
> decompress them if the user decides to install it - or don't and just wait 
> for the next update of a package that will be uncompressed, but transfered 
> xz-compressed).
>
> Any opinions on this? This would give us the best of both worlds:

I think it is worth evaluating. Also I'd aim for the best solution for
modern architecture, not for older ones.
If checksums are needed I'd also take a look at using the SSE4.2 CRC
function CRC-32C (Castagnoli) used by iSCSI, EXT4 and BTRFS.

/Fredrik Holmqvist, TQH

Other related posts: