From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 91E301B61D for ; Wed, 4 Oct 2017 13:46:30 +0200 (CEST) Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga104.jf.intel.com with ESMTP; 04 Oct 2017 04:46:28 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.42,477,1500966000"; d="scan'208";a="159265275" Received: from silpixa00399464.ir.intel.com (HELO silpixa00399464.ger.corp.intel.com) ([10.237.222.157]) by fmsmga006.fm.intel.com with ESMTP; 04 Oct 2017 04:46:27 -0700 From: Pablo de Lara To: declan.doherty@intel.com, akhil.goyal@nxp.com Cc: dev@dpdk.org, Pablo de Lara Date: Wed, 4 Oct 2017 04:46:05 +0100 Message-Id: <20171004034613.44541-1-pablo.de.lara.guarch@intel.com> X-Mailer: git-send-email 2.9.4 In-Reply-To: <20170922075519.28342-1-pablo.de.lara.guarch@intel.com> References: <20170922075519.28342-1-pablo.de.lara.guarch@intel.com> Subject: [dpdk-dev] [PATCH v4 0/8] Crypto-perf app improvements X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Oct 2017 11:46:31 -0000 This patchset includes some improvements in the Crypto performance application, including app fixes and new parameter additions. The last patch, in particular, introduces performance improvements. Currently, crypto operations are allocated in a mempool and mbufs in a different one. Then mbufs are extracted to an array, which is looped through for all the crypto operations, impacting greatly the performance, as much more memory is used. Since crypto operations and mbufs are mapped 1:1, the can share the same mempool object (similar to having the mbuf in the private data of the crypto operation). This improves performance, as it is only required to handle a single mempool and the mbufs are obtained from the cache of the mempoool, and not from an static array. Changes in v4: - Refactored test code, to minimize duplications - Removed --qp-nb parameter. Now the number of queue pairs per device are calculated from the number of logical cores available and the number of crypto devices Changes in v3: - Renamed "number of queue pairs" option from "--qps" to "--qp-nb", for more consistency Changes in v2: - Added support for multiple queue pairs - Mempool for crypto operations and mbufs is now created using rte_mempool_create_empty(), rte_mempool_set_ops_byname(), rte_mempool_populate_default() and rte_mempool_obj_iter(), so mempool handler is set, as per Akhil's request. Pablo de Lara (8): app/crypto-perf: refactor common test code app/crypto-perf: set AAD after the crypto operation app/crypto-perf: parse AEAD data from vectors app/crypto-perf: parse segment size app/crypto-perf: overwrite mbuf when verifying app/crypto-perf: do not populate the mbufs at init app/crypto-perf: support multiple queue pairs app/crypto-perf: use single mempool app/test-crypto-perf/Makefile | 5 + app/test-crypto-perf/cperf_ops.c | 136 ++++++++--- app/test-crypto-perf/cperf_ops.h | 2 +- app/test-crypto-perf/cperf_options.h | 5 +- app/test-crypto-perf/cperf_options_parsing.c | 47 ++-- app/test-crypto-perf/cperf_test_common.c | 225 ++++++++++++++++++ app/test-crypto-perf/cperf_test_common.h | 52 +++++ app/test-crypto-perf/cperf_test_latency.c | 239 +++---------------- app/test-crypto-perf/cperf_test_pmd_cyclecount.c | 239 ++++--------------- app/test-crypto-perf/cperf_test_throughput.c | 237 +++---------------- app/test-crypto-perf/cperf_test_vector_parsing.c | 55 +++++ app/test-crypto-perf/cperf_test_verify.c | 278 ++++++----------------- app/test-crypto-perf/main.c | 100 +++++--- doc/guides/tools/cryptoperf.rst | 6 +- 14 files changed, 715 insertions(+), 911 deletions(-) create mode 100644 app/test-crypto-perf/cperf_test_common.c create mode 100644 app/test-crypto-perf/cperf_test_common.h -- 2.9.4