-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Relax CI constraint on numpy<1.25
#11020
Conversation
The major problem in NumPy 1.25 transpired to be that particular versions of Apple clang (including the one used in Numpy's wheel-build CD pipelines) produced non-deterministic code from new SIMD routines for complex multiplication. This in turn destabilised our `Isometry` decompositions, which caused major correctness problems. As of Numpy 1.26.1 (released 2023-10-14), that SIMD code now decays to the scalar form if the compiler was known to be buggy, which restores the previous behaviour.
One or more of the the following people are requested to review this:
|
The common errors between Linux/macOS/Windows and Numpy 1.26.1 are fixed by #11023. I'm not certain if the Linux+ |
Pull Request Test Coverage Report for Build 6619917150
💛 - Coveralls |
The major problem in NumPy 1.25 transpired to be that particular versions of Apple clang (including the one used in Numpy's wheel-build CD pipelines) produced non-deterministic code from new SIMD routines for complex multiplication. This in turn destabilised our `Isometry` decompositions, which caused major correctness problems. As of Numpy 1.26.1 (released 2023-10-14), that SIMD code now decays to the scalar form if the compiler was known to be buggy, which restores the previous behaviour. (cherry picked from commit fb8a69d)
Removing the restriction on the numpy version has introduced some non-determinism to some of the unitary synthesis tests that is causing a flaky failure in CI. This commit reverts the version cap removal to unblock CI. In parallel we should debug the source of the instability causing the test to fail so we can run CI using the latest version of numpy. This reverts commit fb8a69d.
Removing the restriction on the numpy version has introduced some non-determinism to some of the unitary synthesis tests that is causing a flaky failure in CI. This commit reverts the version cap removal to unblock CI. In parallel we should debug the source of the instability causing the test to fail so we can run CI using the latest version of numpy. This reverts commit fb8a69d.
Summary
The major problem in NumPy 1.25 transpired to be that particular versions of Apple clang (including the one used in Numpy's wheel-build CD pipelines) produced non-deterministic code from new SIMD routines for complex multiplication. This in turn destabilised our
Isometry
decompositions, which caused major correctness problems. As of Numpy 1.26.1 (released 2023-10-14), that SIMD code now decays to the scalar form if the compiler was known to be buggy, which restores the previous behaviour.Details and comments
See numpy/numpy#24000 for details.
Fix #10305
Close #10906 (obsolete now that there's a fixed Numpy released)