[Numpy-discussion] New iterator API (nditer): Overlap detection in NumPy

Nathaniel Smith njs at pobox.com
Wed Sep 7 12:22:24 EDT 2016


On Sep 7, 2016 9:03 AM, "Sebastian Berg" <sebastian at sipsolutions.net> wrote:
>
> Hi all,
>
> Pauli just opened a nice pull request [1] to add overlap detection to
> the new iterator, this means adding a new iterator flag:
>
> `NPY_ITER_COPY_IF_OVERLAP`
>
> If passed to the iterator (also exposed in python), the iterator will
> copy the operands such that reading and writing should only occur for
> identical operands. For now this is implemented by always copying the
> output/writable operand (this could be improved though, so I would not
> say its fixed API).

I wonder if there is any way we can avoid the flag, and just make this
happen automatically when appropriate? nditer has too many "unbreak-me"
flags already.

Are there any cases where we *don't* want the copy-if-overlap behavior?
Traditionally overlap has triggered undefined behavior, so there's no
backcompat issue, right?

-n
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20160907/ace2cf89/attachment.html>


More information about the NumPy-Discussion mailing list