[Python-Dev] More compact dictionaries with faster iteration (original) (raw)

Serhiy Storchaka storchaka at gmail.com
Wed Dec 31 14:12:58 CET 2014


On 10.12.12 03:44, Raymond Hettinger wrote:

The current memory layout for dictionaries is unnecessarily inefficient. It has a sparse table of 24-byte entries containing the hash value, key pointer, and value pointer.

Instead, the 24-byte entries should be stored in a dense table referenced by a sparse table of indices.

FYI PHP 7 will use this technique [1]. In conjunction with other optimizations this will decrease memory consumption of PHP hashtables up to 4 times.

[1] http://nikic.github.io/2014/12/22/PHPs-new-hashtable-implementation.html



More information about the Python-Dev mailing list