appimagetool icon indicating copy to clipboard operation
appimagetool copied to clipboard

Default to a sensible zstd compression level

Open probonopd opened this issue 1 year ago • 2 comments

Default to a sensible zstd compression level to improve application startup times. Data:

https://github.com/AppImage/AppImageKit/issues/478#issuecomment-1944449840

probonopd avatar Feb 14 '24 19:02 probonopd

Define "sensible".

TheAssassin avatar May 04 '24 20:05 TheAssassin

A reasonably good tradeoff between

  • Good compression
  • Fast application startup times
  • High zsync efficiency

Did I miss something?

probonopd avatar May 05 '24 10:05 probonopd

I think this issue can be closed, it ended up being the issue of the default block size, even back then I noticed that there was something other than the compression level at play.

Now librewolf takes:

  • 2.5 seconds with the original gzip that the official appimage comes with (111.1 MiB)
  • 1.9 seconds with zstd level 20 (100.9 MiB)
  • 1.7 seconds with zstd level 1 (124 MiB)

The difference between zstd 1 and 20 is 0.2 seconds, in other words it really isn't a big deal that zstd 15 is the default being used.

And native non appimage librewolf takes 0.9 seconds to start, so the overhead of the appimage is less than 1 second for my old broadwell cpu.

Samueru-sama avatar Aug 10 '24 01:08 Samueru-sama

Reference:

  • https://github.com/AppImage/AppImageSpec/issues/44

probonopd avatar Aug 10 '24 05:08 probonopd

I think this issue can be closed, it ended up being the issue of the default block size, even back then I noticed that there was something other than the compression level at play.

so how are you making your appimages now? Or has the default blocksize been changed in appimagetol?

adrianinsaval avatar Nov 14 '24 21:11 adrianinsaval

I think this issue can be closed, it ended up being the issue of the default block size, even back then I noticed that there was something other than the compression level at play.

so how are you making your appimages now? Or has the default blocksize been changed in appimagetol?

It was changed here.

Samueru-sama avatar Nov 14 '24 23:11 Samueru-sama