All Projects → inikep → Lizard

inikep / Lizard

Licence: other
Lizard (formerly LZ5) is an efficient compressor with very fast decompression. It achieves compression ratio that is comparable to zip/zlib and zstd/brotli (at low and medium compression levels) at decompression speed of 1000 MB/s and faster.

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Lizard

Lzbench
lzbench is an in-memory benchmark of open-source LZ77/LZSS/LZMA compressors
Stars: ✭ 490 (+20.1%)
Mutual labels:  zlib, zstd, compression, brotli, compressor
Turbobench
Compression Benchmark
Stars: ✭ 211 (-48.28%)
Mutual labels:  zlib, zstd, compression, brotli, compressor
EasyCompressor
⚡ A compression library that implements many compression algorithms such as LZ4, Zstd, LZMA, Snappy, Brotli, GZip, and Deflate. It helps you to improve performance by reducing Memory Usage and Network Traffic for caching.
Stars: ✭ 167 (-59.07%)
Mutual labels:  compression, brotli, compressor, zstd
pyrus-cramjam
Thin Python wrapper to de/compression algorithms in Rust - lightweight & no dependencies
Stars: ✭ 40 (-90.2%)
Mutual labels:  compression, brotli, zstd
Rust Brotli
Brotli compressor and decompressor written in rust that optionally avoids the stdlib
Stars: ✭ 504 (+23.53%)
Mutual labels:  compression, brotli, compressor
deflate-rs
An implementation of a DEFLATE encoder in rust
Stars: ✭ 47 (-88.48%)
Mutual labels:  compression, zlib
django-brotli
Django middleware that compresses response using brotli algorithm.
Stars: ✭ 16 (-96.08%)
Mutual labels:  compression, brotli
BrotliSharpLib
Full C# port of Brotli compression algorithm
Stars: ✭ 77 (-81.13%)
Mutual labels:  compression, brotli
zopflipy
A Python bindings for Zopfli
Stars: ✭ 17 (-95.83%)
Mutual labels:  compression, zlib
sabotage
a radical and experimental distribution based on musl libc and busybox
Stars: ✭ 502 (+23.04%)
Mutual labels:  fast, efficient
lz4-napi
Fastest lz4 compression library in Node.js, powered by napi-rs and lz4-flex.
Stars: ✭ 29 (-92.89%)
Mutual labels:  fast, compression
box
Box - Open Standard Archive Format, a zip killer.
Stars: ✭ 38 (-90.69%)
Mutual labels:  compression, brotli
zstdmt
Multithreading Library for Brotli, Lizard, LZ4, LZ5, Snappy and Zstandard
Stars: ✭ 107 (-73.77%)
Mutual labels:  brotli, zstd
ratarmount
Random Access Read-Only Tar Mount
Stars: ✭ 217 (-46.81%)
Mutual labels:  compression, zstd
tiny
compress data for better performance
Stars: ✭ 21 (-94.85%)
Mutual labels:  compression, brotli
LZ77-Compressor
A simplified implementation of the LZ77 compression algorithm
Stars: ✭ 70 (-82.84%)
Mutual labels:  compression, compressor
decompress
Pure OCaml implementation of Zlib.
Stars: ✭ 103 (-74.75%)
Mutual labels:  compression, zlib
lzbase62
LZ77(LZSS) based compression algorithm in base62 for JavaScript.
Stars: ✭ 38 (-90.69%)
Mutual labels:  compression, zlib
Zipper
C++ wrapper around minizip compression library
Stars: ✭ 272 (-33.33%)
Mutual labels:  zlib, compression
Mimir
📱 A simple & efficient iOS logging framework for high usage apps
Stars: ✭ 13 (-96.81%)
Mutual labels:  fast, efficient

Lizard - efficient compression with very fast decompression

Lizard (formerly LZ5) is a lossless compression algorithm which contains 4 compression methods:

  • fastLZ4 : compression levels -10...-19 are designed to give better decompression speed than LZ4 i.e. over 2000 MB/s
  • LIZv1 : compression levels -20...-29 are designed to give better ratio than LZ4 keeping 75% decompression speed
  • fastLZ4 + Huffman : compression levels -30...-39 add Huffman coding to fastLZ4
  • LIZv1 + Huffman : compression levels -40...-49 give the best ratio (comparable to zlib and low levels of zstd/brotli) at decompression speed of 1000 MB/s

Lizard library is based on frequently used LZ4 library by Yann Collet but the Lizard compression format is not compatible with LZ4. Lizard library is provided as open-source software using BSD 2-Clause license. The high compression/decompression speed is achieved without any SSE and AVX extensions.

Branch Status
lz5_v1.5 Build Status Build status
lizard Build Status Build status

Benchmarks

The following results are obtained with lzbench and -t16,16 using 1 core of Intel Core i5-4300U, Windows 10 64-bit (MinGW-w64 compilation under gcc 6.2.0) with silesia.tar which contains tarred files from Silesia compression corpus.

Compressor name Compression Decompress. Compr. size Ratio
memcpy 7332 MB/s 8719 MB/s 211947520 100.00
lz4 1.7.3 440 MB/s 2318 MB/s 100880800 47.60
lz4hc 1.7.3 -1 98 MB/s 2121 MB/s 87591763 41.33
lz4hc 1.7.3 -4 55 MB/s 2259 MB/s 79807909 37.65
lz4hc 1.7.3 -9 22 MB/s 2315 MB/s 77892285 36.75
lz4hc 1.7.3 -12 17 MB/s 2323 MB/s 77849762 36.73
lz4hc 1.7.3 -16 10 MB/s 2323 MB/s 77841782 36.73
lizard 1.0 -10 346 MB/s 2610 MB/s 103402971 48.79
lizard 1.0 -12 103 MB/s 2458 MB/s 86232422 40.69
lizard 1.0 -15 50 MB/s 2552 MB/s 81187330 38.31
lizard 1.0 -19 3.04 MB/s 2497 MB/s 77416400 36.53
lizard 1.0 -21 157 MB/s 1795 MB/s 89239174 42.10
lizard 1.0 -23 30 MB/s 1778 MB/s 81097176 38.26
lizard 1.0 -26 6.63 MB/s 1734 MB/s 74503695 35.15
lizard 1.0 -29 1.37 MB/s 1634 MB/s 68694227 32.41
lizard 1.0 -30 246 MB/s 909 MB/s 85727429 40.45
lizard 1.0 -32 94 MB/s 1244 MB/s 76929454 36.30
lizard 1.0 -35 47 MB/s 1435 MB/s 73850400 34.84
lizard 1.0 -39 2.94 MB/s 1502 MB/s 69807522 32.94
lizard 1.0 -41 126 MB/s 961 MB/s 76100661 35.91
lizard 1.0 -43 28 MB/s 1101 MB/s 70955653 33.48
lizard 1.0 -46 6.25 MB/s 1073 MB/s 65413061 30.86
lizard 1.0 -49 1.27 MB/s 1064 MB/s 60679215 28.63
zlib 1.2.8 -1 66 MB/s 244 MB/s 77259029 36.45
zlib 1.2.8 -6 20 MB/s 263 MB/s 68228431 32.19
zlib 1.2.8 -9 8.37 MB/s 266 MB/s 67644548 31.92
zstd 1.1.1 -1 235 MB/s 645 MB/s 73659468 34.75
zstd 1.1.1 -2 181 MB/s 600 MB/s 70168955 33.11
zstd 1.1.1 -5 88 MB/s 565 MB/s 65002208 30.67
zstd 1.1.1 -8 31 MB/s 619 MB/s 61026497 28.79
zstd 1.1.1 -11 16 MB/s 613 MB/s 59523167 28.08
zstd 1.1.1 -15 4.97 MB/s 639 MB/s 58007773 27.37
zstd 1.1.1 -18 2.87 MB/s 583 MB/s 55294241 26.09
zstd 1.1.1 -22 1.44 MB/s 505 MB/s 52731930 24.88
brotli 0.5.2 -0 217 MB/s 244 MB/s 78226979 36.91
brotli 0.5.2 -2 96 MB/s 283 MB/s 68066621 32.11
brotli 0.5.2 -5 24 MB/s 312 MB/s 60801716 28.69
brotli 0.5.2 -8 5.56 MB/s 324 MB/s 57382470 27.07
brotli 0.5.2 -11 0.39 MB/s 266 MB/s 51138054 24.13

Documentation

The raw Lizard block compression format is detailed within lizard_Block_format.

To compress an arbitrarily long file or data stream, multiple blocks are required. Organizing these blocks and providing a common header format to handle their content is the purpose of the Frame format, defined into lizard_Frame_format. Interoperable versions of Lizard must respect this frame format.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].