[dpdk-stable] [19.11 4/4] crypto/qat: add minimum enq threshold
Luca Boccassi
bluca at debian.org
Fri Aug 7 16:53:02 CEST 2020
On Fri, 2020-08-07 at 14:57 +0200, Arek Kusztal wrote:
> [ upstream commit 47c3f7a41a26c9943f9804691d03828b2ce09f40 ]
>
> This patch adds minimum enqueue threshold to Intel
> QuickAssist Technology PMD.
> It is an optimisation, configured by a command line option,
> which can be used to reduce MMIO write occurrences.
>
> Cc: stable at dpdk.org
>
> Signed-off-by: Fiona Trahe <fiona.trahe at intel.com>
> Signed-off-by: Arek Kusztal <arkadiuszx.kusztal at intel.com>
> ---
> doc/guides/cryptodevs/qat.rst | 18 +++++++
> drivers/common/qat/qat_common.c | 3 ++
> drivers/common/qat/qat_common.h | 3 ++
> drivers/common/qat/qat_device.c | 99 ++++++++++++++++++++++++++++++++-----
> drivers/common/qat/qat_device.h | 22 +++++++--
> drivers/common/qat/qat_qp.c | 10 ++++
> drivers/common/qat/qat_qp.h | 3 ++
> drivers/compress/qat/qat_comp_pmd.c | 14 +++++-
> drivers/compress/qat/qat_comp_pmd.h | 4 +-
> drivers/crypto/qat/qat_asym_pmd.c | 14 +++++-
> drivers/crypto/qat/qat_asym_pmd.h | 4 +-
> drivers/crypto/qat/qat_sym_pmd.c | 14 +++++-
> drivers/crypto/qat/qat_sym_pmd.h | 4 +-
> 13 files changed, 190 insertions(+), 22 deletions(-)
>
> diff --git a/doc/guides/cryptodevs/qat.rst b/doc/guides/cryptodevs/qat.rst
> index 5135703..aa3cdcf 100644
> --- a/doc/guides/cryptodevs/qat.rst
> +++ b/doc/guides/cryptodevs/qat.rst
> @@ -273,6 +273,24 @@ allocated while for GEN1 devices, 12 buffers are allocated, plus 1472 bytes over
> larger than the input size).
>
>
> +Running QAT PMD with minimum threshold for burst size
> +~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +If only a small number or packets can be enqueued. Each enqueue causes an expensive MMIO write.
> +These MMIO write occurrences can be optimised by setting any of the following parameters
> +- qat_sym_enq_threshold
> +- qat_asym_enq_threshold
> +- qat_comp_enq_threshold
> +When any of these parameters is set rte_cryptodev_enqueue_burst function will
> +return 0 (thereby avoiding an MMIO) if the device is congested and number of packets
> +possible to enqueue is smaller.
> +To use this feature the user must set the parameter on process start as a device additional parameter:
> + .example: '-w 03:01.1,qat_sym_enq_threshold=32,qat_comp_enq_threshold=16'
> +All parameters can be used with the same device regardless of order. Parameters are separated
> +by comma. When the same parameter is used more than once first occurrence of the parameter
> +is used.
> +Maximum threshold that can be set is 32.
> +
> Device and driver naming
> ~~~~~~~~~~~~~~~~~~~~~~~
Normally I wouldn't accept a patch that adds new command line features,
but given it's restricted to a single PMD _and_ the feature is present
in the first short term release after 19.11 (20.02) thus allowing non-
breaking upgrades, I'll merge the series.
--
Kind regards,
Luca Boccassi
More information about the stable
mailing list