[v3,0/4] Add dual threading in QAT PMD
Message ID | 20191211145004.11672-1-arkadiuszx.kusztal@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id B7F0BA04F6; Wed, 11 Dec 2019 15:51:16 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 173FC2C6A; Wed, 11 Dec 2019 15:51:16 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 775111D9E for <dev@dpdk.org>; Wed, 11 Dec 2019 15:51:14 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 11 Dec 2019 06:51:13 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,301,1571727600"; d="scan'208";a="220478747" Received: from akusztax-mobl.ger.corp.intel.com ([10.104.12.173]) by fmsmga001.fm.intel.com with ESMTP; 11 Dec 2019 06:51:10 -0800 From: Arek Kusztal <arkadiuszx.kusztal@intel.com> To: dev@dpdk.org Cc: akhil.goyal@nxp.com, fiona.trahe@intel.com, declan.doherty@intel.com, Arek Kusztal <arkadiuszx.kusztal@intel.com> Date: Wed, 11 Dec 2019 15:50:00 +0100 Message-Id: <20191211145004.11672-1-arkadiuszx.kusztal@intel.com> X-Mailer: git-send-email 2.19.1.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v3 0/4] Add dual threading in QAT PMD X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
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(-)