[Tutor] Python GIL

Chris Fuller cfuller084 at thinkingplanet.net
Tue Nov 25 23:09:54 CET 2008


Python interpreters running in separate processes have no affect on each 
other.  This is the easiest way to get around the limitations of the GIL.  
The GIL generally has limited effect on multithreaded applications on a 
single-core machine.  It can be a serious bottleneck on multicore machines, 
however.  Other implementations of Python, such as Jython or IronPython, do 
not have the GIL and are not subject to these limitations.  However, any 
modules written in C will not be available unless they have been ported.

A little poking around with google should tell you more.

Cheers

On Tuesday 25 November 2008 15:26, OkaMthembo wrote:
> Hi all,
>
> I wish to find out what the Global Interpreter Lock is and its relevance
> regarding the serving of high traffic Python sites. My understanding from
> what i read is that its a state whereby only one interpreter can be invoked
> on a physical machine. How does this impact performance of web apps that
> receive a high rate of requests? Do scripts wait in some marshalled queue
> for a certain period until their turn to be interpreted, or can multiple
> simultaneous requests be processed in parallel by the Python interpreter?
>
> Please clear my confusion regarding this topic. Any explanation would be
> appreciated.
>
> Best regards,


More information about the Tutor mailing list