Overview
This project is focus on building a comprehensive benchmark for comparing time and space efficiency of open source compression codecs on JVM platform. Codecs to include need to be accesible from Java (and thereby from any JVM language) via either pure Java interface or JNI; and need to support either basic block mode (byte array in, byte array out), or streaming code (InputStream in, OutputStream out).
Benchmark suite is based on Japex framework.
In addition to benchmark itself, we also provide access to set of benchmark results, which can be used for overview of general performance patterns for standard test suites. It is recommended, however, to run tests yourself since they vary depending on platform. In addition, to get more accurate understanding of how results apply to your use case(s), the best thing to do is to collect specific set of test data that reflects your usage, and run tests over this.
For more complete description, checkout out project Wiki
Results
Are available on project Wiki.
Codecs included
Codecs are listed on project Wiki.
Test data used
We have tried to make use of existing de-facto standard test suites, including:
- Calgary corpus: 18 test files from
- Canterbury corpus: 11 test files
- Maximum Compression: 10 test files
- QuickLZ: 5 test files
- Silesia: 12 test files
Getting involved
To access source, just clone project
To participate in discussions of benchmark suite, results, and other things related to compression performance, please join our discussion group
License
Benchmark code is licensed under Apache License 2.0.
Note that as usual, license only covers (re)distribution of code, and does not apply to your own use of code (i.e. running tests locally), which you can do regardless of licensing.