TESTING: fix inconsistent entry count in csd.in#1232
TESTING: fix inconsistent entry count in csd.in#1232langou merged 1 commit intoReference-LAPACK:masterfrom
Conversation
TESTING/csd.in declares that the number of values of M, P, and Q is 10, but each of the three data lines actually contains 11 entries. Update the count to 11 so the header matches the test input data. This is a test-data consistency fix only.
The merge-base changed after approval.
The merge-base changed after approval.
|
Thank you for the thoughtful summary, @langou, and thanks also to @martin-frbg for the context in #1231. I would like to argue in favor of option (1), i.e. actually changing 10 to 11, for the following reasons.
Tests of the CS Decomposition routines LAPACK VERSION 3.*.0 The following parameter values will be used: Relative machine underflow is taken to be 0.222507-307 Routines pass computational tests if test ratio is less than 30.00 CSD routines passed the tests of the error exits ( 8 tests done) CSD: CS Decomposition End of tests Note that xeigtstz only exposes the error and the xeigtstc xeigtstd xeigtsts tests passed without errors for 3.12.1.
For these reasons I would gently lean toward merging this PR as-is (option 1) rather than just adding a comment (option 2). Of course, I am happy to also add an explanatory comment alongside the change if that would make the intent clearer to future readers. |
|
Let me share some background on how I came to care about this particular line in csd.in, since I think the history is relevant to the decision. the input file csd.in was confusing in a way that made an honest reader (me) believe the header was simply wrong, Raising the count so that all listed cases are actually exercised would have caught this, and would protect against analogous slips in the future. For that reason, I would still gently advocate for changing 10 to 11 (and, in the spirit of point 0 in my earlier comment, I would also be happy to add an explanatory comment alongside the change so that future readers understand the intent). |
|
Summary: +1 for changing 10 → 11. |
This is a useful summary! 👍 |
The merge-base changed after approval.
|
For some reasons, my approving review is not enough to enable the merge. |
The merge-base changed after approval.
The merge-base changed after approval.
|
Seems every approval is immediately dismissed with an automated message (credited to nakatamaho) that the merge base changed after approval. I don't think I've encountered this before, but perhaps updating the PR by merging the unrelated changes that were merged into master in the meantime will help ? |
|
https://github.com/orgs/community/discussions/58535 seems related, either there's an associated "branch protection rule" activated somewhere in the project settings (didn't see it, but may be visible to project owner only ?) or it's a github hickup. One suggestion in that thread was to close and reopen the PR... |
The merge-base changed after approval.
Thanks a lot @martin-frbg. This seems to have helped a lot. Thanks for the research work. |
|
Sorry, didn't see in time that you also did the close/reopen/review... think you can merge it now if you like, I promise not to frog up the process anymore ? |
(*) Feel welcome to frog up 🐸 processes as you just did as much as you want! What you just did was quite helpful. Good frogging up! (*) I am waiting for the test suite to complete and see the green checkmark. ✅ and then I will merge 🔀. |
|
I appreciate it! Thank you very much for your kindness! |
Add the upstream ZUNBDB3 fix that conjugates the X21 row before generating and applying the right Householder reflector. The row is already conjugated again afterward, so this makes the reflector operate with the expected complex vector convention while preserving the stored data layout. Register the LAPACK 3.12.1 patch, include it in EXTRA_DIST, and mirror the fix in the generated Cunbdb3 reference implementation. Enable the LAPACK 3.12.1 CSD input patch in the fable test patch flow, which adds small M/P/Q edge cases to csd.in. see also: Reference-LAPACK/lapack#1232 Reference-LAPACK/lapack#1196
|
reopen as this is not yet merged |
|
For record #1196 This time, the additional path 54 40 20 — one of the cases that only gets exercised when the count is raised — exposed a real failure under 3.12.1. I initially assumed it was an MPLAPACK-side regression and spent a non-trivial amount of time debugging it from that angle, without success. I then went back and ran reference LAPACK 3.12.1 itself with a csd.in containing all 12 entries, and observed exactly the same failure. At that point I was confident the bug was in 3.12.1 itself, not in MPLAPACK. Out of curiosity I then checked out current master and reran the same test — and the failure was gone. In other words, the bug was present in the released 3.12.1 and was silently fixed somewhere between 3.12.1 and the current tree (a careful reading of the issues and PRs in that window would presumably identify exactly when). This is #1196 |
Summary
TESTING/csd.indeclares that the number of values ofM,P, andQis 10, but each of the three corresponding data lines actually contains 11 entries.This PR updates that count from 10 to 11 so the header matches the test input data.
Details
In
TESTING/csd.in:Mline has 11 valuesPline has 11 valuesQline has 11 valuesbut the file currently says:
This change makes the metadata consistent with the actual contents of the file.
Impact
This is a test-input consistency fix only.