diff options
| author | Raymond Hettinger <python@rcn.com> | 2004-03-17 21:55:03 (GMT) |
|---|---|---|
| committer | Raymond Hettinger <python@rcn.com> | 2004-03-17 21:55:03 (GMT) |
| commit | 4344278250a2994aefc1be03dffc37e1c35e4992 (patch) | |
| tree | bd6fd21b51da765ae7588dca958d11819aa77c6d /Python/mysnprintf.c | |
| parent | 969d8c0c8cbef8f8b838c3032bb6beb60cb59f4f (diff) | |
| download | cpython-4344278250a2994aefc1be03dffc37e1c35e4992.zip cpython-4344278250a2994aefc1be03dffc37e1c35e4992.tar.gz cpython-4344278250a2994aefc1be03dffc37e1c35e4992.tar.bz2 | |
Dictionary optimizations:
* Factored constant structure references out of the inner loops for
PyDict_Next(), dict_keys(), dict_values(), and dict_items().
Gave measurable speedups to each (the improvement varies depending
on the sparseness of the dictionary being measured).
* Added a freelist scheme styled after that for tuples. Saves around
80% of the calls to malloc and free. About 10% of the time, the
previous dictionary was completely empty; in those cases, the
dictionary initialization with memset() can be skipped.
Diffstat (limited to 'Python/mysnprintf.c')
0 files changed, 0 insertions, 0 deletions
