From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 9C19B952 for ; Sun, 5 Mar 2017 14:02:33 +0100 (CET) Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Mar 2017 05:02:31 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.35,247,1484035200"; d="scan'208";a="64395583" Received: from irsmsx105.ger.corp.intel.com ([163.33.3.28]) by orsmga004.jf.intel.com with ESMTP; 05 Mar 2017 05:02:31 -0800 Received: from irsmsx112.ger.corp.intel.com (10.108.20.5) by irsmsx105.ger.corp.intel.com (163.33.3.28) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 5 Mar 2017 13:02:30 +0000 Received: from irsmsx109.ger.corp.intel.com ([169.254.13.44]) by irsmsx112.ger.corp.intel.com ([169.254.1.175]) with mapi id 14.03.0248.002; Sun, 5 Mar 2017 13:02:30 +0000 From: "Ananyev, Konstantin" To: "Yang, Zhiyong" , "dev@dpdk.org" CC: "Richardson, Bruce" Thread-Topic: [dpdk-dev] [PATCH v2 0/5] consistent PMD batching behaviour Thread-Index: AQHSlBA2bU4ncZdX/kyYWq9E6mQFkKGGOGfQ Date: Sun, 5 Mar 2017 13:02:30 +0000 Message-ID: <2601191342CEEE43887BDE71AB9772583FAC9B50@IRSMSX109.ger.corp.intel.com> References: <1487926101-4637-2-git-send-email-zhiyong.yang@intel.com> <1488539851-71009-1-git-send-email-zhiyong.yang@intel.com> In-Reply-To: <1488539851-71009-1-git-send-email-zhiyong.yang@intel.com> Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.181] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 0/5] consistent PMD batching behaviour 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: , X-List-Received-Date: Sun, 05 Mar 2017 13:02:35 -0000 > The rte_eth_tx_burst() function in the file Rte_ethdev.h is invoked to > transmit output packets on the output queue for DPDK applications as > follows. >=20 > static inline uint16_t > rte_eth_tx_burst(uint8_t port_id, uint16_t queue_id, > struct rte_mbuf **tx_pkts, uint16_t nb_pkts); >=20 > Note: The fourth parameter nb_pkts: The number of packets to transmit. >=20 > The rte_eth_tx_burst() function returns the number of packets it actually > sent. Most of PMD drivers can support the policy "send as many packets to > transmit as possible" at the PMD level. but the few of PMDs have some sor= t > of artificial limits for the pkts sent successfully. For example, VHOST t= x > burst size is limited to 32 packets. Some rx_burst functions have the > similar problem. The main benefit is consistent batching behavior for use= r > to simplify their logic and avoid misusage at the application level, ther= e > is unified rte_eth_tx/rx_burst interface already, there is no reason for > inconsistent behaviors. > This patchset fixes it via adding wrapper function at the PMD level. >=20 > Changes in V2: > 1. rename ixgbe, i40e and fm10k vec function XXX_xmit_pkts_vec to new nam= e > XXX_xmit_fixed_burst_vec, new wrapper functions use original name > XXX_xmit_pkts_vec according to Bruce's suggestion. >=20 > 2. simplify the code to avoid the if or if/else. >=20 > Zhiyong Yang (5): > net/fm10k: remove limit of fm10k_xmit_pkts_vec burst size > net/i40e: remove limit of i40e_xmit_pkts_vec burst size > net/ixgbe: remove limit of ixgbe_xmit_pkts_vec burst size > net/vhost: remove limit of vhost TX burst size > net/vhost: remove limit of vhost RX burst size >=20 > drivers/net/fm10k/fm10k.h | 4 ++-- > drivers/net/fm10k/fm10k_ethdev.c | 28 ++++++++++++++++++++++++--- > drivers/net/fm10k/fm10k_rxtx_vec.c | 4 ++-- > drivers/net/i40e/i40e_rxtx.c | 28 ++++++++++++++++++++++++--- > drivers/net/i40e/i40e_rxtx.h | 4 ++-- > drivers/net/i40e/i40e_rxtx_vec_neon.c | 4 ++-- > drivers/net/i40e/i40e_rxtx_vec_sse.c | 4 ++-- > drivers/net/ixgbe/ixgbe_rxtx.c | 29 +++++++++++++++++++++++++++= + > drivers/net/ixgbe/ixgbe_rxtx.h | 4 ++-- > drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c | 4 ++-- > drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c | 4 ++-- > drivers/net/vhost/rte_eth_vhost.c | 34 +++++++++++++++++++++++++++= ++---- > 12 files changed, 125 insertions(+), 26 deletions(-) >=20 Acked-by: Konstantin Ananyev > -- > 2.7.4