[dpdk-dev] [PATCH 00/33] introduce generic eventdev test application framework
Jerin Jacob
jerin.jacob at caviumnetworks.com
Sun May 28 21:58:21 CEST 2017
The dpdk-test-eventdev tool is a Data Plane Development Kit (DPDK)
application that allows exercising various eventdev use cases. This
application has a generic framework to add new eventdev based test cases
to verify functionality and measure the performance parameters of DPDK
eventdev devices.
This patch set adds the infrastructure for the generic eventdev test cases
framework with four test cases.
1)perf_queue: test to measure the throughput and forward latency of eventdev
pipeline on different PMDs
2)perf_atq: functionally same as perf_queue. But using "all type queues"
eventdev infrastructure
3)order_queue: test to verify the ingress event ordering and atomic
schedule type
4)order_atq: functionally same as order_queue. But using "all types queues"
eventdev infrastructure.
The tests are verified using both HW(OCTEONTX) and SW eventdev PMDs.
We need minor changes in the API specification to run this test cases on HW PMD.
I will send those patches separately.
Since "all type queues" is not currently supported in SW implementation.
"All types queue" based tests returns "unsupported" on SW PMD.
Added detailed documentation for test operation and usage with diagrams in the
last five patches in the series.
/Jerin
This patch-set has following two checkpatch false positive errors:
-------------------------------------------------------------------------------
### app/testeventdev: update options through the command line
WARNING:EMBEDDED_FUNCTION_NAME: Prefer using '"%s...", __func__' to using 'usage', this function's name, in a string
#139: FILE: app/test-eventdev/evt_options.c:179:
+ printf("usage : %s [EAL options] -- [application options]\n", program);
WARNING:LONG_LINE: line over 80 characters
#185: FILE: app/test-eventdev/test_perf_common.c:207:
+ printf(CLGRN"\r%.3f mpps avg %.3f mpps [avg fwd latency %.3f us] "CLNRM,
-------------------------------------------------------------------------------
Guduri Prathyusha (3):
app/testeventdev: add string parsing helpers
app/testeventdev: update options through the command line
doc: describe the new eventdev test application
Jerin Jacob (30):
app/testeventdev: introduce dpdk-test-eventdev application
app/testeventdev: define eventdev test ops
app/testeventdev: add eventdev test registration framework
app/testeventdev: add common helper functions
app/testeventdev: define the test options
app/testeventdev: add helper functions to check options
app/testeventdev: add helper functions to dump options
app/testeventdev: invoke the test ops
app/testeventdev: add the signal handler
app/testeventdev: order: add test setup and destroy
app/testeventdev: order: add basic functions
app/testeventdev: order: add eventdev port setup
app/testeventdev: order: launch lcores
app/testeventdev: add order queue test
app/testeventdev: order queue: add worker functions
app/testeventdev: add order "all types queue" test
app/testeventdev: perf: add test setup and destroy
app/testeventdev: perf: add basic functions
app/testeventdev: perf: add opt dump and check functions
app/testeventdev: perf: add eventdev port setup
app/testeventdev: perf: launch lcores
app/testeventdev: add perf queue test
app/testeventdev: perf queue: add worker functions
app/testeventdev: add perf "all types queue" test
app/testeventdev: perf: add "all type queue" worker function
doc/testeventdev: add "order queue" test details
doc/testeventdev: add "order all types queue" test details
doc/testeventdev: add "perf queue" test details
doc/testeventdev: add "perf all types queue" test details
maintainers: claim responsibility for the eventdev test app
MAINTAINERS | 6 +
app/Makefile | 4 +
app/test-eventdev/Makefile | 54 +
app/test-eventdev/evt_common.h | 105 +
app/test-eventdev/evt_main.c | 227 ++
app/test-eventdev/evt_options.c | 339 +++
app/test-eventdev/evt_options.h | 274 ++
app/test-eventdev/evt_test.c | 70 +
app/test-eventdev/evt_test.h | 125 +
app/test-eventdev/parser.c | 432 +++
app/test-eventdev/parser.h | 79 +
app/test-eventdev/test_order_atq.c | 232 ++
app/test-eventdev/test_order_common.c | 356 +++
app/test-eventdev/test_order_common.h | 153 +
app/test-eventdev/test_order_queue.c | 242 ++
app/test-eventdev/test_perf_atq.c | 278 ++
app/test-eventdev/test_perf_common.c | 495 +++
app/test-eventdev/test_perf_common.h | 169 ++
app/test-eventdev/test_perf_queue.c | 289 ++
config/common_base | 5 +
doc/guides/tools/img/eventdev_order_atq_test.svg | 1576 ++++++++++
doc/guides/tools/img/eventdev_order_queue_test.svg | 1673 ++++++++++
doc/guides/tools/img/eventdev_perf_atq_test.svg | 3188 ++++++++++++++++++++
doc/guides/tools/img/eventdev_perf_queue_test.svg | 2599 ++++++++++++++++
doc/guides/tools/index.rst | 2 +-
doc/guides/tools/testeventdev.rst | 461 +++
26 files changed, 13432 insertions(+), 1 deletion(-)
create mode 100644 app/test-eventdev/Makefile
create mode 100644 app/test-eventdev/evt_common.h
create mode 100644 app/test-eventdev/evt_main.c
create mode 100644 app/test-eventdev/evt_options.c
create mode 100644 app/test-eventdev/evt_options.h
create mode 100644 app/test-eventdev/evt_test.c
create mode 100644 app/test-eventdev/evt_test.h
create mode 100644 app/test-eventdev/parser.c
create mode 100644 app/test-eventdev/parser.h
create mode 100644 app/test-eventdev/test_order_atq.c
create mode 100644 app/test-eventdev/test_order_common.c
create mode 100644 app/test-eventdev/test_order_common.h
create mode 100644 app/test-eventdev/test_order_queue.c
create mode 100644 app/test-eventdev/test_perf_atq.c
create mode 100644 app/test-eventdev/test_perf_common.c
create mode 100644 app/test-eventdev/test_perf_common.h
create mode 100644 app/test-eventdev/test_perf_queue.c
create mode 100644 doc/guides/tools/img/eventdev_order_atq_test.svg
create mode 100644 doc/guides/tools/img/eventdev_order_queue_test.svg
create mode 100644 doc/guides/tools/img/eventdev_perf_atq_test.svg
create mode 100644 doc/guides/tools/img/eventdev_perf_queue_test.svg
create mode 100644 doc/guides/tools/testeventdev.rst
--
2.13.0
More information about the dev
mailing list