-
-
Notifications
You must be signed in to change notification settings - Fork 11k
einsum broadcast regression (with optimize=True) #10343
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Both? @dgasmith Another one ;) |
Seems we failed to format the error message correctly either |
This hit at least one user of astropy (though not our tests, annoyingly!). The following breaks (but works with
|
A very simple fix for the slowdown is in #10359 - I think we should consider reverting the change in default of |
`einsum` in this version of numpy does not support single expansion. See [numpy#10343]. [numpy#10343]: numpy/numpy#10343
This circumvents a bug in numpy 1.14.0: `einsum` does not support single expansion. See [numpy#10343]. [numpy#10343]: numpy/numpy#10343
This circumvents a bug in numpy 1.14.0: `einsum` with the now default `optimize=True` does not support single expansion (see [numpy#10343]). [numpy#10343]: numpy/numpy#10343
This circumvents a bug in numpy 1.14.0: `einsum` with the now default `optimize=True` does not support singleton expansion (see [numpy#10343]). [numpy#10343]: numpy/numpy#10343
@charris - this issue is biting lots of astropy users now (astropy/astropy#7051 (comment)) as it screws up one of our coordinate transformations. Those are all with 3x3 matrices, so pending not just a solution but also a better understanding of impacts of performance, I would indeed suggest to revert the default for 1.14.1. Obviously, we also need #10352 and especially its tests so this doesn't recur! (We missed it in astropy in part because for python3 our transformations use |
There have been bugs reported with einsum with the `optimize=True` default, see numpy#10343. This PR makes the default `False` for the 1.14.1 release. Because optimizing the contractions is not a trivial problem, this will allow us to pursue fixes in the longer time frame of the 1.15 release.
OK, good, that gives more time. |
This circumvents a bug in numpy 1.14.0: `einsum` with the now default `optimize=True` does not support singleton expansion (see [numpy#10343]). [numpy#10343]: numpy/numpy#10343
In numpy 1.13.3, it was possible to execute the following snippet without errors, while in 1.14.0 this happens:
However
optimize=False
solves the problem:Is this intended behavior and the user is now responsible to explicitly disable optimization or is this a bug?
The text was updated successfully, but these errors were encountered: