[Numpy-discussion] Fast threading solution thoughts

Sturla Molden sturla@molden...
Thu Feb 12 06:57:10 CST 2009


On 2/12/2009 12:20 PM, David Cournapeau wrote:

> It does if you have access to the parallel toolbox I mentioned earlier
> in this thread (again, no experience with it, but I think it is
> specially popular on clusters; in that case, though, it is not limited
> to thread-based implementation).

As has been mentioned, Matlab is a safer language for parallel computing 
  as arrays are immutable. There is almost no need for synchronization 
of any sort, except barriers.

Maybe it is time to implement an immutable ndarray subclass?

With immutable arrays we can also avoid making temporary arrays in 
expressions like y = a*b + c. y just gets an expression and three 
immutable buffers. And then numexpr (or something like it) can take care 
of the rest.

As for Matlab, I have noticed that they are experimenting with CUDA now, 
to use nvidia's processors for hardware-acceleration. As even modest 
GPUs can yield hundreds of gigaflops, that is going to be hard to match 
(unless we make an ndarray that uses the GPU). But again, as the 
performance of GPUs comes from massive multithreading, immutability may 
be the key here as well.

Sturla Molden











More information about the Numpy-discussion mailing list