Skip to content
/ qat-java Public

Compression Library accelerated by Intel® QuickAssist Technology

License

Notifications You must be signed in to change notification settings

intel/qat-java

Repository files navigation

Java* Native Interface binding for Intel® QuickAssist Technology

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.

Prerequisites

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).

Build

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 into target 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 into target/site.

The build instructions were tested using gcc-8.5.0, cmake-3.10.0, mvn-3.5.4 and clang-16.0.0.

Testing

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

Examples

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>

Authors

with contributions by:

  • Jacob Greenfield, Matthew West, and Tommy Parisi

Contributing

Thanks for your interest! Please see the CONTRIBUTING.md document for information on how to contribute.

Contacts

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.

About

Compression Library accelerated by Intel® QuickAssist Technology

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •