[dpdk-dev] [PATCH 1/2] testpmd: add forwarding mode to simulate a noisy neighbour

Iremonger, Bernard bernard.iremonger at intel.com
Thu Jun 14 13:24:03 CEST 2018


Hi Jens,

> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Jens Freimann
> Sent: Thursday, April 19, 2018 8:00 AM
> To: dev at dpdk.org
> Cc: ailan at redhat.com; jan.scheurich at ericsson.com; vkaplans at redhat.com;
> Richardson, Bruce <bruce.richardson at intel.com>; thomas at monjalon.net;
> maxime.coquelin at redhat.com; Ananyev, Konstantin
> <konstantin.ananyev at intel.com>; Yigit, Ferruh <ferruh.yigit at intel.com>
> Subject: [dpdk-dev] [PATCH 1/2] testpmd: add forwarding mode to simulate
> a noisy neighbour
> 
> This adds a new forwarding mode 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 a simple way of measuring performance impact on
> cache and memory footprint utilization from various VNF co-located on the
> same host machine. For this it does:
> 
> * Buffer packets in a FIFO:
> 
> Create a fifo to buffer received packets. Once it flows over put those packets
> into the actual tx queue. The fifo is created per tx queue and its size can be
> set with the --buffersize-before-sending commandline parameter.
> 
> A second commandline parameter is used to set a timeout in milliseconds
> after which the fifo is flushed.
> 
> --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.
> 
> Add several options to simulate route lookups (memory reads) in tables that
> can be quite large, as well as route hit statistics update.
> These options simulates the while stack traversal and will trash the cache.
> Memory access is random.
> 
> * simulate route lookups:
> 
> Allocate a buffer and perform reads and writes on it as specified by
> commandline options:
> 
> --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.
> 
> Signed-off-by: Jens Freimann <jfreimann at redhat.com>
> ---

<snip>

This patch fails to apply to dpdk_18_08.rc0
checkpatch.pl reports  7 errors and 15 warnings.

Regards,

Bernard.



More information about the dev mailing list