From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesper Dangaard Brouer Subject: Re: [RFC PATCH v2 14/14] samples/bpf: sample application for AF_XDP sockets Date: Thu, 12 Apr 2018 13:05:21 +0200 Message-ID: <20180412130521.30d41cbc@redhat.com> References: <20180327165919.17933-1-bjorn.topel@gmail.com> <20180327165919.17933-15-bjorn.topel@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Cc: magnus.karlsson@intel.com, alexander.h.duyck@intel.com, alexander.duyck@gmail.com, john.fastabend@gmail.com, ast@fb.com, willemdebruijn.kernel@gmail.com, daniel@iogearbox.net, netdev@vger.kernel.org, michael.lundkvist@ericsson.com, jesse.brandeburg@intel.com, anjali.singhai@intel.com, qi.z.zhang@intel.com, ravineet.singh@ericsson.com, =?UTF-8?B?QmrDtnJuIFTDtnBlbA==?= , brouer@redhat.com To: =?UTF-8?B?QmrDtnJuIFTDtnBlbA==?= Return-path: Received: from mx3-rdu2.redhat.com ([66.187.233.73]:33842 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751889AbeDLLFa (ORCPT ); Thu, 12 Apr 2018 07:05:30 -0400 In-Reply-To: <20180327165919.17933-15-bjorn.topel@gmail.com> Sender: netdev-owner@vger.kernel.org List-ID: On Tue, 27 Mar 2018 18:59:19 +0200 Björn Töpel wrote: > +static void dump_stats(void) > +{ > + unsigned long stop_time = get_nsecs(); > + long dt = stop_time - start_time; > + int i; > + > + for (i = 0; i < num_socks; i++) { > + double rx_pps = xsks[i]->rx_npkts * 1000000000. / dt; > + double tx_pps = xsks[i]->tx_npkts * 1000000000. / dt; > + char *fmt = "%-15s %'-11.0f %'-11lu\n"; > + > + printf("\n sock%d@", i); > + print_benchmark(false); > + printf("\n"); > + > + printf("%-15s %-11s %-11s %-11.2f\n", "", "pps", "pkts", > + dt / 1000000000.); > + printf(fmt, "rx", rx_pps, xsks[i]->rx_npkts); > + printf(fmt, "tx", tx_pps, xsks[i]->tx_npkts); > + } > +} > + > +static void *poller(void *arg) > +{ > + (void)arg; > + for (;;) { > + sleep(1); > + dump_stats(); > + } > + > + return NULL; > +} You are printing the "pps" (packets per sec) as an average over the entire test run... could you please change that to, at least also, have an more up-to-date value like between the last measurement? The problem is that when you start the test, the first reading will be too low, and it takes time to average out/up. For ixgbe, first reading will be zero, because it does a link-down+up, which stops my pktgen. The second annoyance is that I like to change system/kernel setting during the run, and observe the effect. E.g change CPU sleep states (via tuned-adm) during the test-run to see the effect, which I cannot with this long average. -- Best regards, Jesper Dangaard Brouer MSc.CS, Principal Kernel Engineer at Red Hat LinkedIn: http://www.linkedin.com/in/brouer