p7zip-project / p7zip

A new p7zip fork with additional codecs and improvements (forked from https://sourceforge.net/projects/sevenzip/ AND https://sourceforge.net/projects/p7zip/).
765 stars 109 forks source link

Should LZ5 be removed? #125

Closed wdlkmpx closed 3 years ago

wdlkmpx commented 3 years ago

https://github.com/inikep/lz5/ redirects to https://github.com/inikep/lizard

So Lizard is LZ5 with bugfixes ( https://github.com/inikep/lizard/issues/28 )

It really doesn't make sense to keep LZ5, unless it's a version incompatible with Lizard...

If Lizard can decompress LZ5, then the lz5 compressor and decompressor should be removed, otherwise only the lz5 compressor should be removed,

But reading a bit more: Lizard = LZ5 = LZ4 ??? Apparently LZ4 is the format and LZ5/Lizard is just an improved compressor. Hmmm

wdlkmpx commented 3 years ago

So LZ5 and Lizard are incompatible, now it makes sense...

I performed some quick tests lz4 vs lz5 ...

# time ./lz4 -9 snes9x.exe
Compressed filename will be : snes9x.exe.lz4 
Compressed 6268416 bytes into 2493452 bytes ==> 39.78%                         

real    0m0.406s
user    0m0.383s
sys 0m0.023s

# time ./lz5 -15 snes9x.exe
Compressed filename will be : snes9x.exe.lz5 
Compressed 6268416 bytes into 2165834 bytes ==> 34.55%                         

real    0m4.871s
user    0m4.150s
sys 0m0.703s

lz4 is incredibly fast, and basically produces the same compression with equivalent cmp levels lz4 -3 vs lz5 -> lz4 produces smaller files with the same speed

lz5 -15 is incredibly slow and doesn't seem to produce files smaller than gzip's and gzip is as fast as lz4 -9

wdlkmpx commented 3 years ago

My quick humble non-scientific tests suggest that lz5 is not better than lz4 in any way, so in order to simplify the codebase a bit, to get faster compile times, less things to worry about, etc, these are actions that should be taken:

1) lizard releases a new version with lz5 v1.5 decompression support 2) lz5 is removed from p7zip 3) p7zip: only lz5 decompression is supported through lizard

but I'll close this because that won't happen.

alicektx commented 3 years ago

...it also looks that...considering it has barely seen a couple of maintenance commits since 2017, i'd personally stay with lz4, zstd & brotli (google & facebook... ie. extensive security testing & not only etc etc)... ¯_(ツ)_/¯