Message196706
Once http://bugs.python.org/issue18835 is resolved, I would like to see the various set optimizations applied to dictionaries as well:
* Move the key before the hash in the dict struct (the key is accessed more frequently in the code and being in the first struct position allows it to be looked-up without a struct offset).
* Don't INCREF and DECREF dummy objects. Only one reference needs to be held. See http://bugs.python.org/issue18797
* Reduce the cost of hash collisions by inspecting nearby dict entries for matches prior to moving on to other probes elsewhere in memory. See http://bugs.python.org/issue18771
* Make the previous improvement more effective by using aligned memory allocations for the dict tables. See http://bugs.python.org/issue18835
Collectively, these optimizations can substantially improve dictionary performance. |
|
Date |
User |
Action |
Args |
2013-09-01 05:14:53 | rhettinger | set | recipients:
+ rhettinger, tim.peters, pitrou, vstinner |
2013-09-01 05:14:53 | rhettinger | set | messageid: <1378012493.62.0.577402281969.issue18898@psf.upfronthosting.co.za> |
2013-09-01 05:14:53 | rhettinger | link | issue18898 messages |
2013-09-01 05:14:52 | rhettinger | create | |
|