[Numpy-discussion] output arguments

Thomas Breuel tmbdev at gmail.com
Mon Jul 23 22:03:33 EDT 2007


Hi,

core NumPy doesn't seem to support a lot of output arguments, or common
composite operations.  For example, a common operation is something like

a = outer(b,c)

or

a += outer(b,c)

There are some workarounds, but they aren't pretty.  Consistently providing
output arguments throughout NumPy would help; is there any reason this isn't
being done?  For example, it would be nice if "outer" supported:

outer(b,c,output=a)
outer(b,c,increment=a)
outer(b,c,increment=a,scale=eps)

or maybe one could specify an accumulation ufunc, with addition,
multiplication, min, and max being fast, and with an optional scale
parameter.

Another approach might be to provide, in addition to the convenient
high-level NumPy operations, direct bindings for BLAS and/or similar
libraries, with Fortran-like procedural interfaces, but I can't find any
such libraries in NumPy or SciPy.  Am I missing something?

It seems like writing native code to speed up these kinds of operations
isn't really so great because (1) it unnecessarily complicates development
and packaging, and (2) is likely to perform worse than BLAS and similar
libraries.

How are other people handling these cases?

Thanks,
Tom
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20070724/574d3942/attachment.html>


More information about the NumPy-Discussion mailing list