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

Akhil Goyal akhil.goyal at nxp.com
Fri Oct 6 13:57:12 CEST 2017


On 10/4/2017 9:16 AM, Pablo de Lara wrote:
> 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
> 
Series Acked-by: Akhil Goyal <akhil.goyal at nxp.com>


More information about the dev mailing list