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

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