Qat-Java is a library that accelerates data compression using Intel® QuickAssist Technology. For more information about Intel® QAT and installation instructions, refer to the QAT Documentation.
Qat-Java currently supports DEFLATE, LZ4, and ZStandard compression algorithms.
This release was validated on the following:
- Intel® QuickAssist Acceleration Driver version QAT20.L.1.2.30-00078.
- QATzip version 1.2.0.
- QAT-ZSTD version 0.2.0
- Zlib* library of version 1.2.7 or higher
- Suggest GCC* of version 4.8.5 or higher
- lz4* library of version 1.8.3 or higher
- zstd* library of version 1.5.0 or higher
- JDK 11 or above.
- gcc, CMake , Maven, and clang (for fuzz testing).
To build qat-java, run the below command:
mvn clean package
Other Maven targets include:
compile
— builds sources.test
— builds and runs tests.package
— builds and writes jar files intotarget
directory.javadoc:javadoc
— generates javadocs.spotless:check
— check if source code is formatted well.spotless:apply
— fixes source code format issues.site
— generates Surefire reports intotarget/site
.
The build instructions were tested using gcc-8.5.0, cmake-3.10.0, mvn-3.5.4 and clang-16.0.0.
To run all the unit tests, execute the below command.
mvn clean test
You can also install the Jazzer tool and run Fuzz tests.
mvn clean test -Dfuzzing=true
You can run the examples in the com.intel.qat.examples
, use the below command:
java -cp .:./target/classes/ com.intel.qat.examples.<example-class>
Or using this command:
java --module-path target/classes -m com.intel.qat/com.intel.qat.examples.<example-class>
- Mulugeta Mammo ([email protected])
- Olasoji Denloye ([email protected])
- Praveen Nishchal ([email protected])
with contributions by:
- Jacob Greenfield, Matthew West, and Tommy Parisi
Thanks for your interest! Please see the CONTRIBUTING.md document for information on how to contribute.
For more information on this library, contact Mammo, Mulugeta ([email protected]) or Denloye, Olasoji ([email protected]).
* Java is a registered trademark of Oracle and/or its affiliates.