From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jerin Jacob Subject: Re: [PATCH 2/4] virtio: introduce RTE_LIBRTE_VIRTIO_INC_VECTOR Date: Wed, 29 Jun 2016 17:10:31 +0530 Message-ID: <20160629114030.GC5301@localhost.localdomain> References: <1467028448-8914-1-git-send-email-jerin.jacob@caviumnetworks.com> <3436400.asiby3BQPB@xps13> <20160629111848.GA5301@localhost.localdomain> <6020070.DOjM99b0E6@xps13> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Cc: , , , , To: Thomas Monjalon Return-path: Received: from na01-by2-obe.outbound.protection.outlook.com (mail-by2on0084.outbound.protection.outlook.com [207.46.100.84]) by dpdk.org (Postfix) with ESMTP id 6E14C2BA7 for ; Wed, 29 Jun 2016 13:40:51 +0200 (CEST) Content-Disposition: inline In-Reply-To: <6020070.DOjM99b0E6@xps13> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Wed, Jun 29, 2016 at 01:25:35PM +0200, Thomas Monjalon wrote: > 2016-06-29 16:48, Jerin Jacob: > > On Mon, Jun 27, 2016 at 04:59:42PM +0200, Thomas Monjalon wrote: > > > 2016-06-27 20:18, Jerin Jacob: > > > > On Mon, Jun 27, 2016 at 04:19:57PM +0200, Thomas Monjalon wrote: > > > > > 2016-06-27 17:24, Jerin Jacob: > > > > > > --- a/config/common_base > > > > > > +++ b/config/common_base > > > > > > @@ -267,6 +267,7 @@ CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n > > > > > > CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n > > > > > > CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DRIVER=n > > > > > > CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n > > > > > > +CONFIG_RTE_LIBRTE_VIRTIO_INC_VECTOR=y > > > > > > > > > > I don't remember what means INC_VECTOR? > > > > > Why a config option is needed for vector implementations? > > > > > > > > I thought of adding additional configuration option(INC_VECTOR) _apart_ from > > > > cpu flag based scheme in the patch because even though if a given platform > > > > has cpu instruction support, in some platforms scalar version may > > > > perform well wrt vector version(based on instruction latency, emulation required or not > > > > etc). So a top level flag INC_VECTOR, can override the vector selection > > > > for a given platform if required. > > > > > > Isn't it a runtime driver option needed to disable vector virtio? > > > > > > > Regarding INC_VECTOR(INC in vector configuration name, I have no idea, I > > > > followed the existing flags) > > > > $ grep "INC_VECTOR" config/common_base > > > > CONFIG_RTE_IXGBE_INC_VECTOR=y > > > > CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y > > > > CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y > > > > > > If the flag is really needed I would suggest VIRTIO_VECTOR. > > > > OK I will change to VIRTIO_VECTOR > > I would prefer a runtime option. OK The platform I test their was NO need for additional VIRTIO_VECTOR configuration as NEON versions outperforms than scalar version. I thought of adding this option to override for any platform if it need to accommodate such platform differences NEON vs scalar versions. I will change completely to run-time detection based on cpuflags for IA and ARM. Any objections? Jerin