-
-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Benchmarking Unishox #50
Comments
Hi @powturbo , Thank you for sharing this !! Thats exactly what Unishox has been made for - Compressing short strings / files < 1kb !! Its really not a general purpose compressor so this comparison is not fair except for showing speed (slowness), which I am working on. However, for achieving better compression overall, following logic could be used, since the magic bit(s) at the beginning of compressed bytes can be used to identify Unishox or other methods:
The size 1024 is arbitrary and if speed is not a concern, it is also possible to compress with both and use the best. The real contenders for Unishox are Smaz, Shoco, Unicode.org's SCSU and BOCU (implementations here and here) and AIMCS (Implementation here). See here for applications of Unishox and it is being used in Tasmota and Meshtastic projects. It is also being used to compress URLs, Email addresses and a person even uses it for obfuscation :-). I have included Unishox3-Alpha in the CI/CD to test compression of all sample files and I did not find any errors. Is it possible to let me know what the errors were? |
Yeah, unishox3 is excellent on short strings. I'm getting a turbobench compare error for the following files: |
I've integrated unishox into Turbobench and made some tests with your test files.
As Unishox2 is very slow, I've made the tests with unishox3. unishox3 can't compress all the test files without errors.
Here a benchmark successfully compressed and decompressed files without error.
Unishox compression is better only for very small files (< 1k).
The text was updated successfully, but these errors were encountered: