• Raymond Hettinger's avatar
    Instead of XORed indicies, switch to a hybrid of linear probing and open addressing. · a35adf5b
    Raymond Hettinger yazdı
    Modern processors tend to make consecutive memory accesses cheaper than
    random probes into memory.
    
    Small sets can fit into L1 cache, so they get less benefit.  But they do
    come out ahead because the consecutive probes don't probe the same key
    more than once and because the randomization step occurs less frequently
    (or not at all).
    
    For the open addressing step, putting the perturb shift before the index
    calculation gets the upper bits into play sooner.
    a35adf5b
Adı
Son kayıt (commit)
Son güncelleme
Doc Loading commit data...
Grammar Loading commit data...
Include Loading commit data...
Lib Loading commit data...
Mac Loading commit data...
Misc Loading commit data...
Modules Loading commit data...
Objects Loading commit data...
PC Loading commit data...
PCbuild Loading commit data...
Parser Loading commit data...
Python Loading commit data...
Tools Loading commit data...
.bzrignore Loading commit data...
.gitignore Loading commit data...
.hgeol Loading commit data...
.hgignore Loading commit data...
.hgtags Loading commit data...
.hgtouch Loading commit data...
LICENSE Loading commit data...
Makefile.pre.in Loading commit data...
README Loading commit data...
config.guess Loading commit data...
config.sub Loading commit data...
configure Loading commit data...
configure.ac Loading commit data...
install-sh Loading commit data...
pyconfig.h.in Loading commit data...
setup.py Loading commit data...