[Python-Dev] More compact dictionaries with faster iteration

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