[Python-Dev] PyBench DictCreation (was Re: Performance compares) (original) (raw)
M.-A. Lemburg mal@lemburg.com
Fri, 18 May 2001 09:26:36 +0200
- Previous message: [Python-Dev] PyBench DictCreation (was Re: Performance compares)
- Next message: [Python-Dev] PyBench DictCreation (was Re: Performance compares)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Jeremy Hylton wrote:
>>>>> "TP" == Tim Peters <tim@digicool.com> writes: TP> I've got no interest in trying to restore the old behavior. A TP> compromise may be to boost the minimum size of a non-empty dict TP> from 4 to 8. As is, the only non-empty dicts that can get away TP> with using the current minimum size of 4 have no more than 2 TP> elements. The question is whether such tiny non-empty dicts are TP> common enough to make everyone else pay for "an extra" resize. I also did a profile run on CreateInstances, which has a difference of +55.54% on my machine. It's basically the same story. The instance dictionary is getting resized more often with Python 2.1+ than it did with Python 1.5.2. I wouldn't be surprised if several more tests are showing a slowdown with the same cause. So boosting the minimum size sounds like a good thing.
FYI, I have a patch which inlines small dictionaries directly into the type object (rather than usin malloc to allocate the slot buffer).
I've experimented with the minimal size a lot and found that setting it to 8 slots gives the bext performance/memory tradeoff.
-- Marc-Andre Lemburg CEO eGenix.com Software GmbH
Company & Consulting: http://www.egenix.com/ Python Software: http://www.lemburg.com/python/
- Previous message: [Python-Dev] PyBench DictCreation (was Re: Performance compares)
- Next message: [Python-Dev] PyBench DictCreation (was Re: Performance compares)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]