From dbd2bf59fa8d432ddb85d85d08ba010c597df0a0 Mon Sep 17 00:00:00 2001 From: Hiroshi Shinaoka Date: Thu, 29 Oct 2026 18:19:53 +0900 Subject: [PATCH] svd: test_josef runs in the nightly LAPACK validation instead of being ignored without a reason `linalg::svd::bidiag_svd::tests::test_josef` came from upstream with a bare `#[ignore]`. Run with `--include-ignored` it passes: the n = 8660 f32 divide-and-conquer SVD of `test_data/svd/svd_josef.txt` reconstructs within its tolerance (67 s in the test profile, 66 s in release, peak 2.3 GB). The data is intact (8660 diagonal and 8660 subdiagonal entries); it is the only file in `test_data/svd/` above the test's n > 1024 cut. At a minute it is too slow for every test run, so the ignore now states why, and the nightly LAPACK validation runs it in a family of its own, `svd_large` (300 s limit), selected by exact name. The svd family could not take it: it already uses 53 of its 120 s on the hosted runner. The family limits now sum to 25 minutes, so the step and job timeouts grow by five minutes (49 and 55). Co-Authored-By: Claude Opus 5.5 --- .github/workflows/lapack-validation.yml | 4 ++-- docs/lapack-validation.md | 6 ++++-- faer/src/linalg/svd/bidiag_svd.rs | 4 +++- .../run-lapack-validation.cpython-310.pyc | Bin 7122 -> 11090 bytes .../run-lapack-validation.cpython-312.pyc | Bin 11761 -> 17535 bytes .../test-lapack-validation.cpython-310.pyc | Bin 4309 -> 7090 bytes scripts/run-lapack-validation.py | 10 ++++++++-- scripts/test-lapack-validation.py | 4 +++- 8 files changed, 20 insertions(+), 8 deletions(-) diff --git a/.github/workflows/lapack-validation.yml b/.github/workflows/lapack-validation.yml index 090e02a4..0a360cf6 100644 --- a/.github/workflows/lapack-validation.yml +++ b/.github/workflows/lapack-validation.yml @@ -15,7 +15,7 @@ concurrency: jobs: validation: runs-on: ubuntu-latest - timeout-minutes: 50 + timeout-minutes: 55 outputs: unexpected: ${{ steps.summary.outputs.unexpected }} stale: ${{ steps.summary.outputs.stale }} @@ -36,7 +36,7 @@ jobs: python3 scripts/test-lapack-validation.py node --test scripts/test-lapack-reporter.cjs - name: Build once and run all numerical families - timeout-minutes: 44 # build <=20m; family limits sum to 20m; setup/headroom + timeout-minutes: 49 # build <=20m; family limits sum to 25m; setup/headroom run: scripts/run-lapack-validation.sh - name: Summarize known and new failures id: summary diff --git a/docs/lapack-validation.md b/docs/lapack-validation.md index 21464c2e..caa6e546 100644 --- a/docs/lapack-validation.md +++ b/docs/lapack-validation.md @@ -291,8 +291,10 @@ fired only for a failure that is not listed - or for a listed test that starts p lose its entry in the same change. Adding an entry without an issue is a bug in the entry. It caches dependencies on failure and uploads environment, build timing, exact selection, family logs and summary for 14 days. Per-family timeouts sum to -20 minutes; the build limit is 20 minutes, the combined step 44 minutes and the -validation job 50 minutes. A separate two-minute reporting job creates/updates one +25 minutes; the build limit is 20 minutes, the combined step 49 minutes and the +validation job 55 minutes. The family `svd_large` runs upstream's large SVD matrix +test `test_josef` (n = 8660, f32, full U and V; about 70 s and 2.3 GB locally), which is too slow to +run with every test and is therefore ignored there. A separate two-minute reporting job creates/updates one open issue titled “Scheduled LAPACK numerical validation is failing” with label `scheduled-lapack-validation`, retaining the failed status and run link. These are upper bounds, not expected runtimes. They allow every family timeout to expire diff --git a/faer/src/linalg/svd/bidiag_svd.rs b/faer/src/linalg/svd/bidiag_svd.rs index 783bc584..56c723f7 100644 --- a/faer/src/linalg/svd/bidiag_svd.rs +++ b/faer/src/linalg/svd/bidiag_svd.rs @@ -2147,7 +2147,9 @@ mod tests { } } #[test] - #[ignore] + // n = 8660 in f32 with full U and V: about a minute even optimised, so it runs in the nightly + // LAPACK validation (family `svd_large`, scripts/run-lapack-validation.py), not with every test. + #[ignore = "large (n = 8660): runs in the nightly LAPACK validation"] fn test_josef() { for file in std::fs::read_dir( PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("test_data/svd/"), diff --git a/scripts/__pycache__/run-lapack-validation.cpython-310.pyc b/scripts/__pycache__/run-lapack-validation.cpython-310.pyc index d051f3430439c89bbc192484f3702ffe868a9470..670cd0d9c52f2b829b514d0860ba4459c77906e4 100644 GIT binary patch literal 11090 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 F{1<(i!dw6V diff --git a/scripts/__pycache__/test-lapack-validation.cpython-310.pyc b/scripts/__pycache__/test-lapack-validation.cpython-310.pyc index 16cacd7583d8275187b4beb728d3af0de9b4cc2c..2b2b156a1c89ffa7b97ab009700c6d1cae1cfb5b 100644 GIT binary patch literal 7090 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 W(5m64Ul~TThT5!d-ma;}qyGVm?2#@2 delta 1010 zcmZuvPe>GD6#w4*(b?I*nuP9Vnq|7FwMGz$8HpN7MYvWtmt~k4m#uMj{bn{3jDjvf zV25{&a3Ki0L`g)4&YkQQ!9XG1?9{!3ec#Nci!>kmnEk!?`+dLn-n={i^;n`DkE?_| z-`0NK8IQkB%m57HJPb*Bl2!3F^a#HQeu0^XX5;~^l6B(2y08j0Fx8p>q>hM1vI<2o zqt6AFiPbZbC!6t_@GK6T)nq1W0OU3?iNwxh5s0G<6L)r*q5RCVAJgNkBx5B4mSCm= zR&N8%BzeM!P9u?H*%tgE{K0WahbDX}O=Oz=sP4KJ^(L39y6wX~O)+eSlonR7MV^Hu zn(|yU&Dw8;;B0=DHw4gdNjU8kIJh74rT>kIGv;IJRcP8 zSE{3C$?%NwVr8r!pGMxC3yNe`c|9oI5NIb?1bUDe87*3lb-zN#2GLO+Xv6PnXTFPH zCx%zG?y1mj_If~o_AqRS*j53Afb_G^3MO!dB{jjQ`2y z{>f!ylz%FkGIjad^wsIfysvoHVr8LZTN?h3_8AeD^+nrqe2F#TY4zbx>9%WWYPg9x zTD5#px9zM<<6JqzNlissu2x(vVwR|7cxAexNwmD|hJN^h!X1p@i^vEZ-FzR*!AMr1 ze5RC-WJh3u&4^nFT+%29gz%129Bo(QsfAxKz(cT~V5<9; z_C6jevJ(E!<+E0Z0!l(@i#6ku^aPy5t@M=YD}@3ddZB>rnG>Mm#Y}%@m{t4IqF!