[dpdk-dev] [PATCH] examples/ip_pipeline: use crc32 in hash functions for arm64

Thomas Monjalon thomas at monjalon.net
Tue Jul 4 01:25:59 CEST 2017


04/07/2017 01:19, Dumitrescu, Cristian:
> From: Thomas Monjalon [mailto:thomas at monjalon.net]
> > 18/05/2017 11:09, Jianbo Liu:
> > > Implement the same hash functions with crc32 on arm platform.
> > >
> > > Signed-off-by: Jianbo Liu <jianbo.liu at linaro.org>
> > > ---
> > >  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.


More information about the dev mailing list