Is this supposed to run on Unladen Swallow? Or does the GIL not come into play here?
The multiprocessing package offers both local and remote concurrency, effectively side-stepping the Global Interpreter Lock by using subprocesses instead of threads. http://docs.python.org/library/multiprocessing.html