Skip to content

Latest commit

 

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libyaz0

A very fast compressor/decompressor for the Yaz0 format, using a fixed amount of memory.

Build

mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .

Implementation

It is very hard to make a fast yaz0 compressor due to it's design.
There is a sliding window to search for matching pattern, and a decent compressor needs either to backtrack (extremely impractical) or at least to look-ahead to get good compression ratios.

This implementation uses an open-addressing multi hash table to store the previous patterns.
A bunch of other optimizations like hash rebuild and pessimistic match checks are applied to make it faster.

License

This software is available under the MIT license.

Author

This software was written by Maxime Bacoux "Nax".

About

A very fast compressor/decompressor for the Yaz0 format

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages