-
Notifications
You must be signed in to change notification settings - Fork 206
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
qa_volk_32f_s32f_convertpuppet_8u is flaky #646
Comments
Hmm. I'll try to look into this in more detail, but the first point I would start at is probably #617 (comment) Edit: It would be nice to be able to see the input vector when the test fails. I suspect that this is caused by values that come out very close to a half integer (and so they might differ in rounding). |
I added a bit of extra debug logging, and it does appear to be rounding differences that are causing the failures.
327.0 is the default scalar value used in tests: Line 30 in a26a1b8
|
The test framework is very rigid, so the only workable fix I can see is to increase the tolerance to 1. I see you already suggested that here: #617 (comment) |
PR: #647 |
The debugging you did shows that I was on the right track in the original PR regarding rounding of values close to a half integer. The reason that FMA works differently than non-FMA kind of makes sense in hardware, because maybe for FMA you are able to carry more precision internally before doing the add, or need a different kind of rounding to meet performance, or whatever. I also have the impression that this does not behave the same in all machines, because on my AMD machine I could not make it fail. I'll try once again with your loop just to make sure. |
I've run the test loop for 20 minutes in my AMD machine and it never failed. It's a Ryzen 7 5800X. So apparently there's not even a spec about how the FMA rounding should behave. |
CI often fails, and the culprit seems to be
qa_volk_32f_s32f_convertpuppet_8u
. This was added in #617./cc @daniestevez
The failure can be demonstrated locally:
The text was updated successfully, but these errors were encountered: