[Python-Dev] Removing the GIL (Me, not you!)

Steve Holden steve at holdenweb.com
Fri Sep 14 21:58:57 CEST 2007


Jean-Paul Calderone wrote:
> On Fri, 14 Sep 2007 14:13:47 -0500, Justin Tulloss <tulloss2 at uiuc.edu> wrote:
>> Your idea can be combined with the maxint/2 initial refcount for
>>> non-disposable objects, which should about eliminate thread-count updates
>>> for them.
>>> --
>>>
>> I don't really like the maxint/2 idea because it requires us to
>> differentiate between globals and everything else. Plus, it's a hack. I'd
>> like a more elegant solution if possible.
> 
> It's not really a solution either.  If your program runs for a couple
> minutes and then exits, maybe it won't trigger some catastrophic behavior
> from this hack, but if you have a long running process then you're almost
> certain to be screwed over by this (it wouldn't even have to be *very*
> long running - a month or two could do it on a 32bit platform).
> 
Could each class define the value to be added to or subtracted from the 
refcount? We'd only need a bit to store the value (since it would always 
be zero or one), but the execution time might increase quite a lot if 
there's no nifty way to conditionally add or subtract one.

regards
  Steve
-- 
Steve Holden        +1 571 484 6266   +1 800 494 3119
Holden Web LLC/Ltd           http://www.holdenweb.com
Skype: holdenweb      http://del.icio.us/steve.holden

Sorry, the dog ate my .sigline



More information about the Python-Dev mailing list