[Python-Dev] int/float freelists vs pymalloc

M.-A. Lemburg mal at egenix.com
Wed Feb 13 13:15:10 CET 2008


On 2008-02-13 12:56, Andrew MacIntyre wrote:
> I'm not that interested in debating the detail of exactly how big the
> prospective LIFO freelists are - I just want to see the situation
> resolved with maximum utilisation of memory for minimum performance 
> penalty.  To that end, +1 from me for accepting your revised patch 
> against issue 2039.  In addition, unless there are other reasons to
> retain it, I would be suggesting that the freelist compaction
> infrastructure you introduced in r60567 be removed for lack of practical 
> utility (assuming acceptance of your patch).

If we're down to voting, here's my vote:

+1 on removing the freelists from ints and floats, but not the
   small int sharing optimization

+1 on focusing on improving pymalloc to handle int and float
   object allocations even better

-1 on changing the freelist implementations to use pymalloc for
   allocation of the freelist members instead of malloc, since
   this would potentially lead to pools (and arenas) being held alive
   by just a few objects - in the worst case a whole arena (256kB)
   for just one int object (14 bytes on 32bit platforms).

Eventually, all freelists should be removed, unless there's a
significant performance loss.

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Feb 13 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