No speedup on multi-processor machine?

Cameron Laird claird at lairds.us
Sun Apr 22 11:08:39 EDT 2007


In article <EdxWh.5224$2v1.4151 at newssvr14.news.prodigy.net>,
John Nagle  <nagle at animats.com> wrote:
>Caleb Hattingh wrote:
>> On Apr 21, 11:02 pm, danfan1... at yahoo.com wrote:
>> 
>>>Hi,
>>>I am using Python Thread library for my parallel processing course
>>>project. I am doing matrix convolution on a multi-processor machine
>>>running Solaris. I just found out that no speed-up is obtained with
>>>threading. It is probably because of something called GIL in Python.
>>>How can I get around
>>>that GIL and get speed-up?
>>>Thanks in advance.
>>>Daniel
>
>    If you're actually doing the convolution in Python, you need
>optimization before you need more CPUs.  There's a numerics library
>for Python called NumPy, but it doesn't have a convolution function,
>although it has an FFT, which may be useful.
>
>    But this is just homework.  Do something reasonable and turn it
>in.  A high performance solution to this problem is probably more
>work than it's worth.
>
>				John Nagle

Along with the excellent advice given by Dennis, John, and the
rest, please be aware that *process*-level parallelization of
a problem sometimes is a benefit.  As already recommended, <URL:
http://wiki.python.org/moin/ParallelProcessing > touches on most
of the pertinent concepts.



More information about the Python-list mailing list