From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adrien Mazarguil Subject: Re: [PATCH v4 1/2] testpmd: add forwarding mode to simulate a noisy neighbour Date: Wed, 27 Jun 2018 16:12:50 +0200 Message-ID: <20180627141250.GX4025@6wind.com> References: <20180623080840.315-1-maxime.coquelin@redhat.com> <20180623080840.315-2-maxime.coquelin@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev@dpdk.org To: Maxime Coquelin Return-path: Received: from mail-wr0-f194.google.com (mail-wr0-f194.google.com [209.85.128.194]) by dpdk.org (Postfix) with ESMTP id BDA461BDD8 for ; Wed, 27 Jun 2018 16:13:07 +0200 (CEST) Received: by mail-wr0-f194.google.com with SMTP id c5-v6so2206148wrs.10 for ; Wed, 27 Jun 2018 07:13:07 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20180623080840.315-2-maxime.coquelin@redhat.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Sat, Jun 23, 2018 at 10:08:39AM +0200, Maxime Coquelin wrote: > From: Jens Freimann > > 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 > Signed-off-by: Maxime Coquelin I'm personally more interested in a forwarding mode for nosy neighbors :) Sorry, couldn't resist. I know where the door is. -- Adrien Mazarguil 6WIND