Thanks guys, for all the replies. They were some very interesting reading / watching.
Seems to me, the Unladen-Swallow might in time produce code which will have this problem lessened a bit. Their roadmap suggests at least modifying the GIL principles if not fully removing it. On top of this, they seem to have a pretty aggressive schedule with good results expected by Q3 this year. I'm hoping that their patches will be accepted to cPython codebase in a timely manner. I definitely liket the speed improvements they showed for Q1 modifications. Though those improvements don't help my case yet... The presentation from mr. Beasley was hilarious :D I find it curious to learn that just simple replacement from events to actual mutexes already lessens the problem a lot. This should already be implemented in the cPython codebase IMHO. As for multiprocessing alternatives, I'll have to look into them. I haven't yet done multiprocessing code and don't really know what will happen when I try. I believe that threads would be much more appropriate for my project, but it's definitely worth a shot. Since my project is supposed to be cross platform, I'm not really looking forward to learning cross platform for C++. All my C++ experience is DOS + Windows derivatives till now :( -- http://mail.python.org/mailman/listinfo/python-list