2018-07-13 02:28:25 +00:00
|
|
|
.. SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
Copyright(c) 2018 Intel Corporation.
|
|
|
|
|
|
|
|
Intel(R) QuickAssist (QAT) Compression Poll Mode Driver
|
|
|
|
=======================================================
|
|
|
|
|
|
|
|
The QAT compression PMD provides poll mode compression & decompression driver
|
|
|
|
support for the following hardware accelerator devices:
|
|
|
|
|
|
|
|
* ``Intel QuickAssist Technology C62x``
|
|
|
|
* ``Intel QuickAssist Technology C3xxx``
|
2018-12-21 09:15:22 +00:00
|
|
|
* ``Intel QuickAssist Technology DH895x``
|
2018-07-13 02:28:25 +00:00
|
|
|
|
|
|
|
|
|
|
|
Features
|
|
|
|
--------
|
|
|
|
|
|
|
|
QAT compression PMD has support for:
|
|
|
|
|
|
|
|
Compression/Decompression algorithm:
|
|
|
|
|
2018-10-26 18:18:30 +00:00
|
|
|
* DEFLATE - using Fixed and Dynamic Huffman encoding
|
2018-07-13 02:28:25 +00:00
|
|
|
|
|
|
|
Window size support:
|
|
|
|
|
|
|
|
* 32K
|
|
|
|
|
|
|
|
Checksum generation:
|
|
|
|
|
|
|
|
* CRC32, Adler and combined checksum
|
|
|
|
|
2019-09-20 20:06:27 +00:00
|
|
|
Stateful operation:
|
|
|
|
|
|
|
|
* Decompression only
|
|
|
|
|
2018-07-13 02:28:25 +00:00
|
|
|
Limitations
|
|
|
|
-----------
|
|
|
|
|
|
|
|
* Compressdev level 0, no compression, is not supported.
|
2020-01-15 14:32:10 +00:00
|
|
|
* Queue-pairs are thread-safe on Intel CPUs but Queues are not (that is, within a single
|
|
|
|
queue-pair all enqueues to the TX queue must be done from one thread and all dequeues
|
|
|
|
from the RX queue must be done from one thread, but enqueues and dequeues may be done
|
|
|
|
in different threads.)
|
2018-08-10 14:10:48 +00:00
|
|
|
* No BSD support as BSD QAT kernel driver not available.
|
2019-09-20 20:06:27 +00:00
|
|
|
* Stateful compression is not supported.
|
2018-08-10 14:10:48 +00:00
|
|
|
|
2018-07-13 02:28:25 +00:00
|
|
|
|
|
|
|
Installation
|
|
|
|
------------
|
|
|
|
|
|
|
|
The QAT compression PMD is built by default with a standard DPDK build.
|
|
|
|
|
2018-08-10 14:10:51 +00:00
|
|
|
It depends on a QAT kernel driver, see :ref:`building_qat`.
|