On 2005-07-05, Jeffrey Maitland <[EMAIL PROTECTED]> wrote: > Ok here goes. The problem I have is I had an application > (wrote/co-wrote) that has a long run time dependant on some variables > passed to it (mainly accuracy variables, the more accurate the longer > the run time - makes sense). However in the hopes to speed it up I > decided to write a threaded version of the program to try and speed > it up. How ever what I am noticing is that the threaded version is > taking as long possibly longer to run. The thing is the threaded > version is running on an 8 ia-64 proccessor system and it seems to > only be using 2 or 3 porcessors at about 30% (fluxiates). My guess is > that 6 threads are running they are using 30% sprox each of a 2 given > CPUS.
Because of the global interpreter lock, a multi-threaded python program does not take advantage of multiple processors. No matter how many CPUs you have, only one thread is allowed to run at any point in time. Multi-threading in Python is useful for simplifying the architecture of a program that has to do multiple independent tasks, but it isn't useful for actually running multiple threads in parallel. -- Grant Edwards grante Yow! Inside, I'm already at SOBBING! visi.com -- http://mail.python.org/mailman/listinfo/python-list