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 8B1C73777 for ; Mon, 9 Jan 2017 15:51:29 +0100 (CET) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga104.jf.intel.com with ESMTP; 09 Jan 2017 06:51:28 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,339,1477983600"; d="scan'208";a="28040139" Received: from irsmsx103.ger.corp.intel.com ([163.33.3.157]) by orsmga002.jf.intel.com with ESMTP; 09 Jan 2017 06:51:27 -0800 Received: from irsmsx155.ger.corp.intel.com (163.33.192.3) by IRSMSX103.ger.corp.intel.com (163.33.3.157) with Microsoft SMTP Server (TLS) id 14.3.248.2; Mon, 9 Jan 2017 14:51:27 +0000 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.173]) by irsmsx155.ger.corp.intel.com ([169.254.14.204]) with mapi id 14.03.0248.002; Mon, 9 Jan 2017 14:51:26 +0000 From: "De Lara Guarch, Pablo" To: "Mrozowicz, SlawomirX" , "dev@dpdk.org" CC: "Mrozowicz, SlawomirX" , "Doherty, Declan" , "Azarewicz, PiotrX T" , "Kerlin, Marcin" , "Kobylinski, MichalX" Thread-Topic: [dpdk-dev] [PATCH v2 3/3] app/crypto-perf: introduce new performance test application Thread-Index: AQHSZ2Of4msPWjxtSEG6BATlB9iNn6EwP07Q Date: Mon, 9 Jan 2017 14:51:25 +0000 Message-ID: References: <1480691702-4600-1-git-send-email-michalx.k.jastrzebski@intel.com> <1483635001-15473-1-git-send-email-slawomirx.mrozowicz@intel.com> <1483635001-15473-4-git-send-email-slawomirx.mrozowicz@intel.com> In-Reply-To: <1483635001-15473-4-git-send-email-slawomirx.mrozowicz@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMjFkZWRiZTEtN2VlYS00MDQxLTk5YWYtZGVlZTRlYjJmMjVlIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IjUybVVjd1lpaVJJR3ZqaVBsMWpieUhreldpRVZqM2s3ZW1hbXNwNEwwXC9JPSJ9 x-ctpclassification: CTP_IC x-originating-ip: [163.33.239.182] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 3/3] app/crypto-perf: introduce new performance test application 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: Mon, 09 Jan 2017 14:51:30 -0000 > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Slawomir > Mrozowicz > Sent: Thursday, January 05, 2017 4:50 PM > To: dev@dpdk.org > Cc: Mrozowicz, SlawomirX; Doherty, Declan; Azarewicz, PiotrX T; Kerlin, > Marcin; Kobylinski, MichalX > Subject: [dpdk-dev] [PATCH v2 3/3] app/crypto-perf: introduce new > performance test application >=20 > This patchset introduce new application which allows measuring > performance parameters of PMDs available in crypto tree. The goal of > this application is to replace existing performance tests in app/test. > Parameters available are: throughput (--ptest throughput) and latency > (--ptest latency). User can use multiply cores to run tests on but only > one type of crypto PMD can be measured during single application > execution. Cipher parameters, type of device, type of operation and > chain mode have to be specified in the command line as application > parameters. These parameters are checked using device capabilities > structure. > Couple of new library functions in librte_cryptodev are introduced for > application use. > To build the application a CONFIG_RTE_APP_CRYPTO_PERF flag has to be > set > (it is set by default). > Example of usage: -c 0xc0 --vdev crypto_aesni_mb_pmd -w 0000:00:00.0 -- > --ptest throughput --devtype crypto_aesni_mb --optype cipher-then-auth > --cipher-algo aes-cbc --cipher-op encrypt --cipher-key-sz 16 --auth-algo > sha1-hmac --auth-op generate --auth-key-sz 64 --auth-digest-sz 12 > --total-ops 10000000 --burst-sz 32 --buffer-sz 64 >=20 > Signed-off-by: Declan Doherty > Signed-off-by: Slawomir Mrozowicz > Signed-off-by: Piotr Azarewicz > Signed-off-by: Marcin Kerlin > Signed-off-by: Michal Kobylinski > --- > MAINTAINERS | 4 + > app/Makefile | 1 + > app/crypto-perf/Makefile | 51 ++ > app/crypto-perf/cperf.h | 58 ++ > app/crypto-perf/cperf_ops.c | 474 +++++++++++++++ > app/crypto-perf/cperf_ops.h | 66 +++ > app/crypto-perf/cperf_options.h | 104 ++++ > app/crypto-perf/cperf_options_parsing.c | 875 > ++++++++++++++++++++++++++++ > app/crypto-perf/cperf_test_latency.c | 685 > ++++++++++++++++++++++ > app/crypto-perf/cperf_test_latency.h | 57 ++ > app/crypto-perf/cperf_test_throughput.c | 651 > +++++++++++++++++++++ > app/crypto-perf/cperf_test_throughput.h | 58 ++ > app/crypto-perf/cperf_test_vector_parsing.c | 500 ++++++++++++++++ > app/crypto-perf/cperf_test_vector_parsing.h | 73 +++ > app/crypto-perf/cperf_test_vectors.c | 476 +++++++++++++++ > app/crypto-perf/cperf_test_vectors.h | 98 ++++ > app/crypto-perf/cperf_verify_parser.c | 314 ++++++++++ > app/crypto-perf/data/aes_cbc_128_sha.data | 503 ++++++++++++++++ > app/crypto-perf/data/aes_cbc_192_sha.data | 504 ++++++++++++++++ > app/crypto-perf/data/aes_cbc_256_sha.data | 504 ++++++++++++++++ > app/crypto-perf/main.c | 411 +++++++++++++ > config/common_base | 6 + > doc/guides/rel_notes/release_17_02.rst | 5 + > doc/guides/tools/cryptoperf.rst | 397 +++++++++++++ > doc/guides/tools/index.rst | 1 + > 25 files changed, 6876 insertions(+) ... > diff --git a/app/crypto-perf/cperf_options_parsing.c b/app/crypto- > perf/cperf_options_parsing.c ... > +int > +cperf_options_check(struct cperf_options *options) > +{ > + if (options->segments_nb > options->buffer_sz) { > + RTE_LOG(ERR, USER1, > + "Segments number greater than buffer > size.\n"); > + return -EINVAL; > + } ... > + } else if (options->op_type =3D=3D CPERF_AEAD) { > + if (!(options->cipher_op =3D=3D > RTE_CRYPTO_CIPHER_OP_ENCRYPT && > + options->auth_op =3D=3D > + RTE_CRYPTO_AUTH_OP_GENERATE) || This logic is incorrect. This OR should be an AND. > + !(options->cipher_op =3D=3D > + RTE_CRYPTO_CIPHER_OP_DECRYPT && > + options->auth_op =3D=3D > + RTE_CRYPTO_AUTH_OP_VERIFY)) { > + RTE_LOG(ERR, USER1, "Use together options: > encrypt and" > + " generate or decrypt and verify.\n"); > + return -EINVAL; > + } > + } > + > + return 0; > +}