mbox

[v3,0/4] Add dual threading in QAT PMD

Message ID 20191211145004.11672-1-arkadiuszx.kusztal@intel.com (mailing list archive)
Headers

Message

Kusztal, ArkadiuszX Dec. 11, 2019, 2:50 p.m. UTC
Remove the limitation whereby enqueue and dequeue must be
done in same thread.
The inflight calculation is reworked to be thread-safe for 2
threads - note this is not general multi-thread support, i.e
all enqueues to a qp must still be done in one thread and
all dequeues must be done in one thread, but enqueues and
dequeues may be in separate threads.
As the tail-coalescing feature is not
threadsafe it is removed first.
Additional option added is to set minumum enqueue burst
threshold which may help to reduce MMIO write occurances.

v3:
- added minimum threshold option
v2:
- clarified wording in docs

Arek Kusztal (1):
  crypto/qat: add minimum enq threshold to qat pmd

Fiona Trahe (3):
  common/qat: remove tail write coalescing feature
  common/qat: move max inflights param into qp
  common/qat: add dual thread support

 doc/guides/compressdevs/qat_comp.rst |  5 +-
 doc/guides/cryptodevs/qat.rst        | 28 +++++++++-
 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          | 86 +++++++++++++++++--------------
 drivers/common/qat/qat_qp.h          | 14 +++--
 drivers/compress/qat/qat_comp_pmd.c  | 13 ++++-
 drivers/compress/qat/qat_comp_pmd.h  |  4 +-
 drivers/crypto/qat/qat_asym_pmd.c    | 13 ++++-
 drivers/crypto/qat/qat_asym_pmd.h    |  4 +-
 drivers/crypto/qat/qat_sym_pmd.c     | 13 ++++-
 drivers/crypto/qat/qat_sym_pmd.h     |  4 +-
 14 files changed, 240 insertions(+), 71 deletions(-)