From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 6D9CB1B1F5 for ; Wed, 5 Dec 2018 09:47:17 +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 fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Dec 2018 00:47:17 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,317,1539673200"; d="scan'208";a="127242274" Received: from tjozwiax-mobl.ger.corp.intel.com (HELO localhost.localdomain) ([10.103.104.46]) by fmsmga001.fm.intel.com with ESMTP; 05 Dec 2018 00:47:14 -0800 From: Tomasz Jozwiak To: dev@dpdk.org, fiona.trahe@intel.com, tomaszx.jozwiak@intel.com, Shally.Verma@cavium.com, akhil.goyal@nxp.com Date: Wed, 5 Dec 2018 09:47:04 +0100 Message-Id: <1543999626-24262-4-git-send-email-tomaszx.jozwiak@intel.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1543999626-24262-1-git-send-email-tomaszx.jozwiak@intel.com> References: <1542983269-30093-1-git-send-email-tomaszx.jozwiak@intel.com> <1543999626-24262-1-git-send-email-tomaszx.jozwiak@intel.com> Subject: [dpdk-dev] [PATCH v5 3/5] doc/guides/tools: add doc files 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, 05 Dec 2018 08:47:18 -0000 Added: - initial version of compression performance test description file. - release note in release_18_11.rst Updated index.rst file Signed-off-by: De Lara Guarch, Pablo Signed-off-by: Tomasz Jozwiak --- MAINTAINERS | 5 +++ doc/guides/rel_notes/release_18_11.rst | 5 +++ doc/guides/tools/comp_perf.rst | 81 ++++++++++++++++++++++++++++++++++ doc/guides/tools/index.rst | 1 + 4 files changed, 92 insertions(+) create mode 100644 doc/guides/tools/comp_perf.rst diff --git a/MAINTAINERS b/MAINTAINERS index 71ba312..dd0c131 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1242,6 +1242,11 @@ M: Bernard Iremonger F: app/test-pmd/ F: doc/guides/testpmd_app_ug/ +Compression performance test application +M: De Lara Guarch, Pablo +F: app/test-compress-perf/ +F: doc/guides/tools/comp_perf.rst + Crypto performance test application M: Declan Doherty F: app/test-crypto-perf/ diff --git a/doc/guides/rel_notes/release_18_11.rst b/doc/guides/rel_notes/release_18_11.rst index 65bab55..e6652a5 100644 --- a/doc/guides/rel_notes/release_18_11.rst +++ b/doc/guides/rel_notes/release_18_11.rst @@ -352,6 +352,11 @@ New Features additional command-line parameter values from the ``DPDK_TEST_PARAMS`` environment variable to make this application easier to use. +* **Added a compression performance test tool.** + + Added a new performance test tool to test the compressdev PMD. The tool tests + compression ratio and compression throughput. Dynamic compression test is not + supported yet. API Changes ----------- diff --git a/doc/guides/tools/comp_perf.rst b/doc/guides/tools/comp_perf.rst new file mode 100644 index 0000000..d343408 --- /dev/null +++ b/doc/guides/tools/comp_perf.rst @@ -0,0 +1,81 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright(c) 2018 Intel Corporation. + +dpdk-test-compress-perf Tool +============================ + +The ``dpdk-test-compress-perf`` tool is a Data Plane Development Kit (DPDK) +utility that allows measuring performance parameters of PMDs available in the +compress tree. The tool reads the data from a file (--input-file), +dumps all the file into a buffer and fills out the data of input mbufs, +which are passed to compress device with compression operations. +Then, the output buffers are fed into the decompression stage, and the resulting +data is compared against the original data (verification phase). After that, +a number of iterations are performed, compressing first and decompressing later, +to check the throughput rate +(showing cycles/iteration, cycles/Byte and Gbps, for compression and decompression). + +.. Note:: + + if the max-num-sgl-segs x seg_sz > input size then segments number in + the chain will be lower than value passed into max-num-sgl-segs. + + +Limitations +~~~~~~~~~~~ + +* Stateful operation and dynamic compression are not supported in this version. + + +Command line options +-------------------- + + ``--driver-name NAME``: compress driver to use + + ``--input-file NAME``: file to compress and decompress + + ``--extended-input-sz N``: extend file data up to this size (default: no extension) + + ``--seg-sz N``: size of segment to store the data (default: 2048) + + ``--burst-sz N``: compress operation burst size + + ``--pool-sz N``: mempool size for compress operations/mbufs (default: 8192) + + ``--max-num-sgl-segs N``: maximum number of segments for each mbuf (default: 16) + + ``--num-iter N``: number of times the file will be compressed/decompressed (default: 10000) + + ``--operation [comp/decomp/comp_and_decomp]``: perform test on compression, decompression or both operations + + ``--huffman-enc [fixed/default]``: Huffman encoding (default: fixed) + + ``--compress-level N``: compression level, which could be a single value, list or range (default: range between 1 and 9) + + ``--window-sz N``: base two log value of compression window size (default: max supported by PMD) + + ``-h``: prints this help + + +Compiling the Tool +------------------ + +**Step 1: PMD setting** + +The ``dpdk-test-compress-perf`` tool depends on compression device drivers PMD which +can be disabled by default in the build configuration file ``common_base``. +The compression device drivers PMD which should be tested can be enabled by setting e.g.:: + + CONFIG_RTE_LIBRTE_PMD_ISAL=y + + +Running the Tool +---------------- + +The tool has a number of command line options. Here is the sample command line: + +.. code-block:: console + + ./build/app/dpdk-test-compress-perf -l 4 -- --driver-name compress_qat --input-file test.txt --seg-sz 8192 + --compress-level 1:1:9 --num-iter 10 --extended-input-sz 1048576 --max-num-sgl-segs 16 --huffman-enc fixed + diff --git a/doc/guides/tools/index.rst b/doc/guides/tools/index.rst index a6e2c4c..24235ba 100644 --- a/doc/guides/tools/index.rst +++ b/doc/guides/tools/index.rst @@ -42,3 +42,4 @@ DPDK Tools User Guides testbbdev cryptoperf testeventdev + comp_perf -- 2.7.4