Comments (7)
I think it's just new. That test didn't register in other recent CI runs (e.g. gh-20805), but gh-20757 merged 9 hours ago and CI wasn't run in that PR after gh-20672 merged. Now in gh-20807:
================================== FAILURES ===================================
______________ TestDifferentialEvolutionSolver.test_strategy_fn _______________
[gw0] win32 -- Python 3.12.3 C:\hostedtoolcache\windows\Python\3.12.3\x64\python.exe
Test passed but took too long to run: Duration 1.9525856999998723s > 1.0s
from scipy.
I'll look into that particular test tomorrow.
from scipy.
In #20757 TestDifferentialEvolutionSolver.test_strategy_fn
was amended slightly to check that a user provided strategy worked with updating='deferred'
. I think the test should be run in the fast and slow test suites.
Considering the other changes in the PR the added test runs faster now (508 ms) than it would've done before the PR (755 ms). So it's not a performance issue in the code, it's just that an extra check has been added. We could cut the number of iterations down to make it run faster, but for me this is in the noise. That it takes 2s in CI is negligible. This extra test didn't fail the runtime check in the PR so any fails will be sporadic.
It's now extra work to mark this test as pytest.mark.fail_slow
. I think the trial policy to have tests run under a second is going create noise from sporadic fails that'll take extra work to quieten.
from scipy.
This extra test didn't fail the runtime check in the PR so any fails will be sporadic.
No, it would have failed, but CI wasn't run on gh-20757 after the relevant fail-slow PR (gh-20672) merged.
I think the trial policy to have tests run under a second is going create noise from sporadic fails that'll take extra work to quieten.
Noted again.
But we still haven't seen real noise yet. Already some good has come out of it: the fail slow marker revealed that COBYQA was uneccessarily slow. Here, it only came up because the two PRs were happening in parallel. To lessen the burden of applying the mark to the test, I'll go ahead and submit a PR and ping you.
I'd be fine removing pytest-fail-slow
it if we really do have trouble with it, though.
from scipy.
Ran across one that was missing from the original PR and fixed it in gh-20824. A few others that I might need to adjust are:
scipy/stats/tests/test_fit.py::TestFit::test_truncweibull_min
scipy/sparse/tests/test_base.py::Test64Bit::test_no_64
scipy/stats/tests/test_fast_gen_inversion.py::test_error_extreme_params
scipy/interpolate/tests/test_bsplines.py::TestSmoothingSpline::test_weighted_smoothing_spline
scipy/sparse/tests/test_base.py::TestCSC::test_slicing_3
scipy/stats/tests/test_resampling.py::TestPermutationTest::test_finite_precision_statistic
scipy/optimize/tests/test_optimize.py::TestOptimizeResultAttributes::test_attributes_present
scipy/optimize/tests/test_constraint_conversion.py::TestNewToOld::test_multiple_constraint_objects
scipy/sparse/tests/test_base.py::Test64Bit::test_resiliency_random
But I've been monitoring the variation between runs and most tests are reasonably consistent. For instance, tests on the list that took significantly more time on a recent CI run compared to the last run of the gh-20672 are:
Tests taking significantly more time:
18.02s -> 28.94s linalg/tests/test_extending.py::test_cython
1.28s -> 2.02s sparse/linalg/_isolve/tests/test_iterative.py::test_precond_inverse[poisson2d]
0.99s -> 1.79s optimize/tests/test__dual_annealing.py::TestDualAnnealing::test_from_docstring
0.91s -> 1.18s optimize/tests/test__dual_annealing.py::TestDualAnnealing::test_bounds_class
0.62s -> 0.83s spatial/tests/test_qhull.py::TestVoronoi::test_incremental[random-3d-chunk-1]
0.43s -> 0.54s optimize/tests/test_constraint_conversion.py::TestNewToOld::test_multiple_constraint_objects
0.4s -> 0.51s linalg/tests/test_matfuncs.py::TestExpM::test_gh18086
0.35s -> 0.49s sparse/tests/test_base.py::Test64Bit::test_resiliency_all_64[TestCSC-test_slicing_3]
0.33s -> 0.45s sparse/tests/test_base.py::Test64Bit::test_resiliency_limit_10[TestDOK-test_add_sub]
0.29s -> 0.43s optimize/tests/test__shgo.py::TestShgoArguments::test_21_1_jac_true
0.28s -> 0.39s special/tests/test_support_alternative_backends.py::test_support_alternative_backends[f_name_n_args3-numpy]
0.26s -> 0.38s sparse/linalg/_eigen/tests/test_svds.py::Test_SVDS_ARPACK::test_small_sigma_sparse[complex-shape1]
0.29s -> 0.37s special/tests/test_support_alternative_backends.py::test_support_alternative_backends[f_name_n_args6-numpy]
0.28s -> 0.37s sparse/linalg/_eigen/arpack/tests/test_arpack.py::test_hermitian_modes
0.28s -> 0.36s special/tests/test_support_alternative_backends.py::test_support_alternative_backends[f_name_n_args1-numpy]
0.26s -> 0.35s stats/tests/test_continuous_basic.py::test_cont_basic[500-burr-arg7]
0.25s -> 0.35s sparse/tests/test_base.py::Test64Bit::test_no_64[TestDOK-test_setdiag_comprehensive]
0.26s -> 0.34s interpolate/tests/test_rgi.py::TestRegularGridInterpolator::test_list_input[quintic]
0.25s -> 0.33s sparse/tests/test_base.py::Test64Bit::test_resiliency_random[TestCSR-test_add_sub]
0.25s -> 0.33s interpolate/tests/test_interpolate.py::TestNdPPoly::test_simple_4d
and all of the ones that take more than 0.55s have pytest.mark.fail_slow
exceptions with plenty of buffer.
from scipy.
Related Issues (20)
- BUG: ImportError: DLL load failed while importing nct_ufunc HOT 11
- ENH: stats.cauchy: improve cdf and quantile accuracy in tail HOT 9
- BUG: sparse.csgraph, array types: some functions should expect a fill-value other than zero HOT 6
- BUG: optimize.minimize: garbage collection in `lbfgs` HOT 9
- MAINT: `spatial.distance.jensenshannon` returns `nan` for contrived input HOT 1
- BUG: Build failure on PyPy3.10 7.3.16: `error: ‘Py_Initialize’ was not declared in this scope` HOT 6
- BUG: special.hyp1f1: broken for complex argument HOT 4
- BUG: test_discrete_basic fails on scipy-1.13.1-cp311-cp311-win_arm64 HOT 12
- MAINT, TST: pytest-fail-slow and local concurrent runs/variability HOT 1
- TST: my local test failures HOT 14
- BUG: ``optimize.nnls`` sometimes fails when input ``A`` is a Fortran order array HOT 5
- BUG: `sparse.csgraph.minimum_spanning_tree`: 64bit indices unsupported HOT 1
- BUG: `stats.levy_stable.rvs`: "S0"-parameterization ignored
- BUG: SLSQP Inequality constraints incompatible when no constraints are present or constraints are respected HOT 9
- BUG: Numerically incorrect `scipy.signal.savgol_coeffs` (also affects `scipy.signal.savgol_filter`) HOT 8
- ENH: `optimize.least_squares`: add option to pass a single function to compute `fun` and `jac` HOT 6
- query: scipy.signal.ShortTimeFFT import does not work HOT 1
- BUG: special.fdtri: inaccurate results for extreme arguments (exposed via scipy.stats.f.ppf) HOT 3
- DOC: Discourse release notes character limit HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from scipy.