From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5A86BA046B for ; Wed, 26 Jun 2019 14:57:41 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DACF420BD; Wed, 26 Jun 2019 14:57:39 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 34866F64 for ; Wed, 26 Jun 2019 14:57:37 +0200 (CEST) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Jun 2019 05:57:37 -0700 X-IronPort-AV: E=Sophos;i="5.63,419,1557212400"; d="scan'208";a="172720146" Received: from bricha3-mobl.ger.corp.intel.com ([10.237.221.51]) by orsmga002-auth.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Jun 2019 05:57:35 -0700 Date: Wed, 26 Jun 2019 13:57:32 +0100 From: Bruce Richardson To: Viacheslav Ovsiienko Cc: dev@dpdk.org, bernard.iremonger@intel.com, ferruh.yigit@intel.com Message-ID: <20190626125732.GC862@bricha3-MOBL.ger.corp.intel.com> References: <1561553317-16777-1-git-send-email-viacheslavo@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1561553317-16777-1-git-send-email-viacheslavo@mellanox.com> User-Agent: Mutt/1.11.4 (2019-03-13) Subject: Re: [dpdk-dev] [PATCH] app/testpmd: add profiling for Rx/Tx burst routines X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list 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 Wed, Jun 26, 2019 at 12:48:37PM +0000, Viacheslav Ovsiienko wrote: > There is the testpmd configuration option called > RTE_TEST_PMD_RECORD_CORE_CYCLES, if this one is turned on > the testpmd application measures the CPU clocks spent > within forwarding loop. This time is the sum of execution > times of rte_eth_rx_burst(), rte_eth_tx_burst(), rte_delay_us(), > rte_pktmbuf_free() and so on, depending on fwd mode set. > > While debugging and performance optimization of datapath > burst routines tt would be useful to see the pure execution > times of these ones. It is proposed to add separated profiling > options: > > CONFIG_RTE_TEST_PMD_RECORD_CORE_TX_CYCLES > enables gathering profiling data for transmit datapath, > ticks spent within rte_eth_tx_burst() routine > > CONFIG_RTE_TEST_PMD_RECORD_CORE_RX_CYCLES > enables gathering profiling data for receive datapath, > ticks spent within rte_eth_rx_burst() routine > > Signed-off-by: Viacheslav Ovsiienko > --- > RFC: http://patches.dpdk.org/patch/53704/ > --- Out of interest, did you try making these runtime rather than build-time options, and see if it makes any perf difference? Given the fact that we would have just two predictable branches per burst of packets, I'd expect the impact to me pretty minimal, if measurable at all. /Bruce