[Numpy-discussion] Numpy and OpenMP
Damian Eads
eads@soe.ucsc....
Sat Mar 15 16:22:49 CDT 2008
Robert Kern wrote:
> On Sat, Mar 15, 2008 at 2:48 PM, Gnata Xavier <xavier.gnata@gmail.com> wrote:
>> Hi,
>>
>> Numpy is great : I can see several IDL/matlab projects switching to numpy :)
>> However, it would be soooo nice to be able to put some OpenMP into the
>> numpy code.
>>
>> It would be nice to be able to be able to use several CPU using the
>> numpy syntax ie A=sqrt(B).
>>
>> Ok, we can use some inline C/C++ code but it is not so easy.
>> Ok, we can split the data over several python executables (one per CPU)
>> but A=sqrt(B) is so simple...
>>
>> numpy + recent gcc with OpenMP --> :) ?
>> Any comments ?
>
> Eric Jones tried to use multithreading to split the computation of
> ufuncs across CPUs. Ultimately, the overhead of locking and unlocking
> made it prohibitive for medium-sized arrays and only somewhat
> disappointing improvements in performance for quite large arrays. I'm
> not familiar enough with OpenMP to determine if this result would be
> applicable to it. If you would like to try, we can certainly give you
> pointers as to where to start.
Perhaps I'm missing something. How is locking and synchronization an
issue when each thread is writing to a mutually exclusive part of the
output buffer?
Thanks,
Damian
More information about the Numpy-discussion
mailing list