Tim Peters added the comment: I suggest reading the thread I started here[1] before pursuing this: it looks very likely that the entire collision resolution scheme should be replaced with one of the "double hashing" ones given there, a bona fide algorithmic improvement for small tables and pathological key sets. Whether it actually runs faster remains a mystery ;-) The loop guts change from a shift, three adds, and a mask (or a multiply, two adds, and a mask) to just one add and a mask. But the post-first-probe pre-loop setup gets more expensive.
[1] https://mail.python.org/pipermail/python-ideas/2017-June/046143.html ---------- nosy: +tim.peters _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29304> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com