multithreading in python ???

Kris Kennaway kris at FreeBSD.org
Thu Jul 10 18:49:34 EDT 2008


Laszlo Nagy wrote:
> Abhishek Asthana wrote:
>>
>> Hi all ,
>>
>> I  have large set of data computation and I want to break it into 
>> small batches and assign it to different threads .I am implementing it 
>> in python only. Kindly help what all libraries should I refer to 
>> implement the multithreading in python.
>>
> You should not do this. Python can handle multiple threads but they 
> always use the same processor. (at least in CPython.) In order to take 
> advantage of multiple processors, use different processes.

Only partly true.  Threads executing in the python interpreter are 
serialized and only run on a single CPU at a time.  Depending on what 
modules you use they may be able to operate independently on multiple 
CPUs.  The term to research is "GIL" (Global Interpreter Lock).  There 
are many webpages discussing it, and the alternative strategies you can use.

Kris



More information about the Python-list mailing list