[Python-Dev] object allocator

Vladimir Marangozov Vladimir.Marangozov@inrialpes.fr
Sat, 22 Jul 2000 20:20:39 +0200 (CEST)

Neil Schemenauer wrote:
> Nice work Vladimir.  I will definately check this out in more detail
> when I get my home computer back.  I'm hoping we can group objects with
> gc_prev and gc_next pointers and reduce the memory overhead.

I am hoping for more.  The major problem with the existing GC algorithm
is related with the big number of objects landing in the older generation,
which atomic traversal may cause dalays. That's why I mentioned the
GC paper discussing this same problem.

As for obmalloc, hey python-dev, make some time to check this out!

We get more control, more speed and a priori less memory consumption.
This is the only small piece of code that I have seen for a while that
can boost the overall speed so much, given the current state of CPython.
On my Linux, Pentium III 550, regrtest.py drops from 45 secs to 40 secs. 

I am particularly interested in feedback from Windows users -- the only
popular setup I haven't tested so far...

The malloc algorithm has been rewritten. Everything is incremental now,
even the free list preallocation in an object's pool.

       Vladimir MARANGOZOV          | Vladimir.Marangozov@inrialpes.fr
http://sirac.inrialpes.fr/~marangoz | tel:(+33-4)76615277 fax:76615252