From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH] examples/ip_pipeline: use crc32 in hash functions for arm64 Date: Tue, 04 Jul 2017 01:25:59 +0200 Message-ID: <1851401.bCM4vaXCYT@xps> References: <1495098540-8303-1-git-send-email-jianbo.liu@linaro.org> <4804120.hkK0KHU9aJ@xps> <3EB4FA525960D640B5BDFFD6A3D891267BA77E6C@IRSMSX108.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev@dpdk.org, Jianbo Liu , "jerin.jacob@caviumnetworks.com" , "ashwin.sekhar@caviumnetworks.com" To: "Dumitrescu, Cristian" , pablo.de.lara.guarch@intel.com Return-path: Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id B0F761094 for ; Tue, 4 Jul 2017 01:26:00 +0200 (CEST) In-Reply-To: <3EB4FA525960D640B5BDFFD6A3D891267BA77E6C@IRSMSX108.ger.corp.intel.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" 04/07/2017 01:19, Dumitrescu, Cristian: > From: Thomas Monjalon [mailto:thomas@monjalon.net] > > 18/05/2017 11:09, Jianbo Liu: > > > Implement the same hash functions with crc32 on arm platform. > > > > > > Signed-off-by: Jianbo Liu > > > --- > > > examples/ip_pipeline/pipeline/hash_func.h | 2 + > > > examples/ip_pipeline/pipeline/hash_func_arm64.h | 245 > > ++++++++++++++++++++++++ > > > 2 files changed, 247 insertions(+) > > > create mode 100644 examples/ip_pipeline/pipeline/hash_func_arm64.h > > > > I don't understand why this code is in an example. > > We have some CRC code in librte_hash, librte_net and ip_pipeline. > > Cristian, Jianbo, > > does it make sense to move these functions somewhere else? > > > > I think example apps are a great way to propose new hash functions. IMO we should encourage the > definition/exploration of new hash functions in our example apps. > > These functions are examples of how fast hash functions can be built using special CPU instructions. > They have much better performance than e.g. jhash, but their properties are largely unknown, as no > rigorous study on their properties (such as uniform distribution) has been conducted. I have seen them > providing good performance for the data set I have been using, but I have no extensive data to support > their maturity level. > > If somebody is willing to invest the effort in proving them, I would be more than happy to see them > moved to a library like librte_hash. Pablo as maintainer has the choice (I think it is not the first time we > discuss bout these hash funcs :) ) > > As mentioned in one of our deprecation notices, I am actively working (not ready for 17.8 unfortunately) > to add a key mask parameter to these functions, so more work on these hash functions is likely to take place. OK thanks for the explanation. I still think we do not need to prove hash for integrating them. I would be interested to read Pablo's opinion.