This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author rhettinger
Recipients pitrou, rhettinger, tim.peters, vstinner
Date 2013-09-01.05:14:52
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1378012493.62.0.577402281969.issue18898@psf.upfronthosting.co.za>
In-reply-to
Content
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.
History
Date User Action Args
2013-09-01 05:14:53rhettingersetrecipients: + rhettinger, tim.peters, pitrou, vstinner
2013-09-01 05:14:53rhettingersetmessageid: <1378012493.62.0.577402281969.issue18898@psf.upfronthosting.co.za>
2013-09-01 05:14:53rhettingerlinkissue18898 messages
2013-09-01 05:14:52rhettingercreate