On Tue, Feb 20, 2007 at 12:30:18PM +0100, Eric Dumazet ([EMAIL PROTECTED]) 
wrote:
> On Tuesday 20 February 2007 12:10, Eric Dumazet wrote:
>  >
> > > Yep, it happend to be my tests :)
> > > Jenkins hash was slower and had significant artifacts for some usage
> > > cases ended up with extremely long chain length.
> > > One can find more details at
> > > http://tservice.net.ru/~s0mbre/blog/2006/05/14#2006_05_14
> > > http://tservice.net.ru/~s0mbre/blog/2006/06/01#2006_06_01
> >
> > Please explain why you chose    h = jhash_2words(faddr, laddr, ports);
> >         h ^= h >> 16;
> >         h ^= h >> 8;
> >
> > jhash is very good, no need to try to be smarter, shufling some bytes...
> > and adding artifacts.
> 
> I checked with my simulator and got no differences with the extra ops, at 
> least no artifacts. Maybe this is related to the fact my hash size is 2^20 ?
> 
> If we use jenkin hash:
> [0]:617469 0%
> [1]:326671 58.7654%
> [2]:86704 89.9601%
> [3]:15387 98.264%
> [4]:2103 99.7773%
> [5]:216 99.9716%
> [6]:24 99.9975%
> [7]:2 100%
> 
> If we use jenkin hash (+plus Evgeniy Polyakov shifts) :
> [0]:617553 0%
> [1]:326403 58.7172%
> [2]:86902 89.9831%
> [3]:15462 98.3275%
> [4]:2012 99.7753%
> [5]:216 99.9696%
> [6]:27 99.9987%
> [7]:1 100%

Yes, they are the same - but artifacts are artifacts in that regard that
they appear only in special sets, as far as I recall one of the parameters
must be constant (i.e. address or port pair).

-- 
        Evgeniy Polyakov
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to