dual processor

Carl Friedrich Bolz cfbolz at gmx.de
Mon Sep 5 19:45:43 EDT 2005


Terry Reedy wrote:
> "Paul Rubin" <"http://phr.cx"@NOSPAM.invalid> wrote in message 
> news:7xu0gz31ha.fsf at ruckus.brouhaha.com...
>>Along with fixing the GIL, I think PyPy needs to give up on this
>>BASIC-style reference counting and introduce real garbage collection.
>>Lots of work has been done on concurrent GC and the techniques for it
>>are reasonably understood by now, especially if there's no hard
>>real-time requirement.
> 
> I believe that gc method (ref count versus other) either is now or will be 
> a PyPy compile option.  Flexibility in certain implementation details 
> leading to flexibility in host systems is, I also recall, part of their EC 
> funding rationale.  But check their announcements, etc.,  for verification 
> and details.

At the moment it is possible to choose between a refcounting GC and the 
Boehm-Demers-Weiser garbage collector (a conservative mark&sweep GC) as 
an option when you translate PyPy to C (when translating to LLVM only 
the Boehm collector is supported). We plan to add more sophisticated 
(and exact) GCs during the next phase of the project. Some amount of 
work on this was done during my Summer of Code project (see 
http://codespeak.net/pypy/dist/pypy/doc/garbage_collection.html) 
although the results are not yet completely integrated into the 
translation process yet.

In addition we plan to add threading with some sort of more fine-grained 
locking as a compile time option although it is not really clear yet how 
that will work in detail :-). Right now you can translate with a GIL or 
with no thread-support at all.

Carl Friedrich Bolz



More information about the Python-list mailing list