Inside the Python GIL
dabeaz.com
dabeaz.com
Ultimately, while the implementation of the GIL is inefficient, and does harm you in the case of processor-bound computation, they're still useful in many cases where you're dealing with I/O (file, and socket).
Even as the multiprocessing maintainer, I'd like to see a more robust threading model within python - unladen swallow (http://code.google.com/p/unladen-swallow/) may be able to offer us a world without a GIL soon(ish), but even barring that, getting some work done on improving what we have today would be nice.
Of course you prefer it .. you have no choice!