[dpdk-dev] [PATCH v4 0/8] Crypto-perf app improvements

De Lara Guarch, Pablo pablo.de.lara.guarch at intel.com
Fri Oct 6 14:50:30 CEST 2017



> -----Original Message-----
> From: De Lara Guarch, Pablo
> Sent: Wednesday, October 4, 2017 4:46 AM
> To: Doherty, Declan <declan.doherty at intel.com>; akhil.goyal at nxp.com
> Cc: dev at dpdk.org; De Lara Guarch, Pablo
> <pablo.de.lara.guarch at intel.com>
> Subject: [PATCH v4 0/8] Crypto-perf app improvements
> 
> 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

Applied to dpdk-next-crypto.

Pablo



More information about the dev mailing list