From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id D05967D0D for ; Thu, 24 Aug 2017 12:48:10 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Aug 2017 03:48:08 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.41,421,1498546800"; d="scan'208";a="893663642" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by FMSMGA003.fm.intel.com with ESMTP; 24 Aug 2017 03:48:07 -0700 Received: from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com [10.237.217.46]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id v7OAm7vh002963; Thu, 24 Aug 2017 11:48:07 +0100 Received: from sivswdev02.ir.intel.com (localhost [127.0.0.1]) by sivswdev02.ir.intel.com with ESMTP id v7OAm6To029539; Thu, 24 Aug 2017 11:48:06 +0100 Received: (from aburakov@localhost) by sivswdev02.ir.intel.com with LOCAL id v7OAm690029535; Thu, 24 Aug 2017 11:48:06 +0100 From: Anatoly Burakov To: dev@dpdk.org Cc: pablo.de.lara.guarch@intel.com, declan.doherty@intel.com, "Burakov, Anatoly" Date: Thu, 24 Aug 2017 11:48:02 +0100 Message-Id: X-Mailer: git-send-email 1.7.0.7 Subject: [dpdk-dev] [PATCH 0/4] New crypto acceleration benchmark mode 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: Thu, 24 Aug 2017 10:48:11 -0000 From: "Burakov, Anatoly" This patchset adds a new "PMD cyclecount" test mode for test-crypto-perf application. This mode is intended to measure hardware acceleration cost (in terms of cycle count) more accurately than throughput test. The general idea is the following: - Measure build-alloc-free cycle separately - Alloc and build ops - Measure completely filling up the TX ring - Wait until ops are processed - Measure completely draining the RX ring - Free all allocated ops In order to make measurements more accurate, the enqueue/dequeue is still done in bursts of specified size, but all of the bursts are now part of a "superburst" of size equal to number of descriptors configured for the device. So, if the number of descriptors configured was 2048 (the default), then 2048 ops will be enqueued and dequeued, in bursts of size specified by test command line. The following command-line switch will run the test: --ptest=pmd-cyclecount In addition to a new mode, two mode command line switches are added: - --desc-nb - configure number of cryptodev descriptors. This value was previously hardcoded to 2048, but is now configurable and set to 2048 by default (so existing behavior is unchanged). - --pmd-cyclecount-delay-ms - pmd-cyclecount-specific parameter that configures the delay (in milliseconds) between TX and RX superbursts, to allow hardware to process ops. Set to 0 by default, and it is expected that each user will tune it for every device. This has no effect on other benchmark modes. PMD cyclecount mode can be used to benchmark software cryptodev drivers as well, but the results will be far less accurate for smaller burst sizes. Anatoly Burakov (4): test-crypto-perf: add nb-desc parameter doc: document new nb-desc parameter for test-crypto-perf app test-crypto-perf: add new PMD benchmarking mode doc: document new pmd-cyclecount benchmarking mode in test-crypto-perf app/test-crypto-perf/Makefile | 1 + app/test-crypto-perf/cperf_options.h | 11 +- app/test-crypto-perf/cperf_options_parsing.c | 54 ++ app/test-crypto-perf/cperf_test_pmd_cyclecount.c | 707 +++++++++++++++++++++++ app/test-crypto-perf/cperf_test_pmd_cyclecount.h | 61 ++ app/test-crypto-perf/main.c | 11 +- doc/guides/rel_notes/release_17_11.rst | 6 + doc/guides/tools/cryptoperf.rst | 14 +- 8 files changed, 861 insertions(+), 4 deletions(-) create mode 100644 app/test-crypto-perf/cperf_test_pmd_cyclecount.c create mode 100644 app/test-crypto-perf/cperf_test_pmd_cyclecount.h -- 2.7.4