DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH v5] app/testpmd: simulating noisy host environment
@ 2018-08-10 14:49 Jens Freimann
  2018-08-10 14:49 ` [dpdk-dev] [PATCH v5] app/testpmd: add forwarding mode to simulate a noisy neighbour Jens Freimann
  0 siblings, 1 reply; 4+ messages in thread
From: Jens Freimann @ 2018-08-10 14:49 UTC (permalink / raw)
  To: dev
  Cc: ailan, jan.scheurich, vkaplans, bruce.richardson, thomas,
	maxime.coquelin, konstantin.ananyev, ferruh.yigit,
	bernard.iremonger, ktraynor

This series adds a new forwarding mode 'noisy'.  It proposes
enhancements to testpmd to simulate more realistic behavior of a guest
machine engaged in receiving and sending packets performing Virtual
Network Function (VNF).

The goal is to enable simple of measuring performance impact on cache and
memory footprint utilization from various VNF co-located on the
same host machine.

This series of patches adds the new command line switches to
testpmd:

--noisy-buffersize-before-sending [packet numbers]

Keep the mbuf in a FIFO and forward the over flooding packets from the
FIFO. This queue is per TX-queue (after all other packet processing).

--noisy-flush-timeout [delay]
Flush the packet queue if no packets have been seen during
[delay]. As long as packets are seen, the timer is reset.


Options to simulate route lookups:

--noisy-memory-footprint [size]
Size of the VNF internal memory (MB), in which the random
read/write will be done, allocated by rte_malloc (hugepages).

--noisy-nb-rnd-write [num]
Number of random writes in memory per packet should be
performed, simulating hit-flags update. 64 bits per write,
all write in different cache lines.

--noisy-nb-rnd-read [num]
Number of random reads in memory per packet should be
performed, simulating FIB/table lookups. 64 bits per read,
all write in different cache lines.

--noisy-nb-rnd-read-write [num]
Number of random reads and writes in memory per packet should
be performed, simulating stats update. 64 bits per read-write, all
reads and writes in different cache lines.

v4->v5:
 * try to minimize impact in common code. Instead implement fwd_begin and fwd_end
 * simplify actual fwd function 
 * remove unnecessary casts (Kevin)
 * use more meaningful names for parameters and global variables (Kevin)
 * free ring and vnf_mem as well (Kevin)
 * squash documentation and code into single patch (Bernard)
 * fix patch subject to "app/testpmd" (Bernard)

Jens Freimann (1):
  app/testpmd: add forwarding mode to simulate a noisy neighbour

 app/test-pmd/Makefile                       |   1 +
 app/test-pmd/meson.build                    |   1 +
 app/test-pmd/noisy_vnf.c                    | 269 ++++++++++++++++++++++++++++
 app/test-pmd/parameters.c                   |  60 +++++++
 app/test-pmd/testpmd.c                      |  35 ++++
 app/test-pmd/testpmd.h                      |  10 ++
 doc/guides/testpmd_app_ug/run_app.rst       |  33 ++++
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |   7 +-
 8 files changed, 414 insertions(+), 2 deletions(-)
 create mode 100644 app/test-pmd/noisy_vnf.c

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-08-30  7:22 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-10 14:49 [dpdk-dev] [PATCH v5] app/testpmd: simulating noisy host environment Jens Freimann
2018-08-10 14:49 ` [dpdk-dev] [PATCH v5] app/testpmd: add forwarding mode to simulate a noisy neighbour Jens Freimann
2018-08-29 14:50   ` Kevin Traynor
2018-08-30  7:22     ` Jens Freimann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).