[Python-Dev] int/float freelists vs pymalloc

M.-A. Lemburg mal at egenix.com
Fri Feb 8 01:23:25 CET 2008

On 2008-02-07 14:09, Andrew MacIntyre wrote:
> Probably in response to the same stimulus as Christian it occurred to me
> that the freelist approach had been adopted long before PyMalloc was
> enabled as standard (in 2.3), and that much of the performance gains
> between 2.2 and 2.3 were in fact due to PyMalloc.

One of the hopes of having a custom allocator for Python was to be
able to get rid off all free lists. For some reason that never happened.
Not sure why. People were probably too busy with adding new
features to the language at the time ;-)

Something you could try to make PyMalloc perform better for the builtin
types is to check the actual size of the allocated PyObjects and then
make sure that PyMalloc uses arenas large enough to hold a good quantity
of them, e.g. it's possible that the float types fall into the same
arena as some other type and thus don't have enough "room" to use
as free list.

Marc-Andre Lemburg

Professional Python Services directly from the Source  (#1, Feb 08 2008)
>>> Python/Zope Consulting and Support ...        http://www.egenix.com/
>>> mxODBC.Zope.Database.Adapter ...             http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ...        http://python.egenix.com/

:::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! ::::

   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
    D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
           Registered at Amtsgericht Duesseldorf: HRB 46611

More information about the Python-Dev mailing list