[Python-Dev] Adding opt-in pymalloc + alpha3

M.-A. Lemburg mal@lemburg.com
Mon, 05 Feb 2001 12:01:50 +0100


Vladimir Marangozov wrote:
> 
> [Tim]
> >
> > Help us out a little more, briefly.  The last time you
> > mentioned obmalloc on
> > Python-Dev was:
> >
> >     Date: Fri, 8 Sep 2000 18:23:13 +0200 (CEST)
> >     Subject: [Python-Dev] 2.0 Optimization & speed
> >     > ...
> >     > The only reason I've postponed my obmalloc patch is that I
> >     > still haven't provided an interface which allows evaluating
> >     > it's impact on the mem size consumption.
> >
> > Still a problem in your eyes?
> 
> Not really. I think obmalloc is a win w.r.t. both space & speed.
> I was aiming at evaluating precisely how much we win with the help
> of the profiler, then tune the allocator even more, but this is
> OS dependant anyway and most people don't dig so deep. I think
> they don't need to either, but it's our job to have a good
> understanding of what's going on.
> 
> In short, you can go for it, opt-in, without fear.
> 
> Not opt-out, though, because of custom object's thread safety.
> 
> Thread safety is a problem. Current extensions implement custom
> object constructors & destructors safely, because they use (at the
> end of the macro chain, today) the system allocator which is
> thread safe. Switching to a thread unsafe allocator by default is
> risky because this may inject bugs in existing working extensions.
> Although the core objects won't be affected by this change because
> of the interpreter lock protection, we have no provisions so far
> for custom object's thread safety.

Ok, everyone seems to agree that adding pymalloc to Python
on an opt-in basis is a Good Thing, so let's do it !

Even though I don't think that adding opt-in code matters
much w/r to stability of the rest of the code, I still think
that we ought to insert a third alpha release to hammer a bit
more on weak refs and nested scopes. 

These two additions are major new features in Python 2.1 which
were added very late in the release cycle and haven't had much
testing in the field.

Thoughts ?

-- 
Marc-Andre Lemburg
______________________________________________________________________
Company:                                        http://www.egenix.com/
Consulting:                                    http://www.lemburg.com/
Python Pages:                           http://www.lemburg.com/python/