You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In #77, the range of integers used when testing 16i inputs was reduced to -7 .. +7, to accommodate the volk_16ic_x2_dot_prod_16ic kernel which does not handle integer overflows consistently between its various protokernels. In fact, other kernels suffer from the same problem. If the testing range is increased to std::numeric_limits<int16_t>::min() .. std::numeric_limits<int16_t>::max(), then the following tests fail:
qa_volk_16i_32fc_dot_prod_32fc
qa_volk_16ic_magnitude_16i
qa_volk_16ic_x2_dot_prod_16ic
qa_volk_16ic_x2_multiply_16ic
Overflows in volk_16ic_x2_dot_prod_16ic cause sporadic test failures even with the reduced range, as documented in #676; #706 should improve the situation, but in the longer term, either these kernels should be improved to handle overflows consistently, or the limitations of these kernels should be documented and the test framework should ensure that inputs do not stray outside the documented limits.
The text was updated successfully, but these errors were encountered:
Do you suggest to add a comment in the kernel doc section that states: Kernel is prone to overflow. Users are encouraged to ensure overflows don't happen or deal with if accordingly.?
In #77, the range of integers used when testing 16i inputs was reduced to -7 .. +7, to accommodate the
volk_16ic_x2_dot_prod_16ic
kernel which does not handle integer overflows consistently between its various protokernels. In fact, other kernels suffer from the same problem. If the testing range is increased tostd::numeric_limits<int16_t>::min()
..std::numeric_limits<int16_t>::max()
, then the following tests fail:qa_volk_16i_32fc_dot_prod_32fc
qa_volk_16ic_magnitude_16i
qa_volk_16ic_x2_dot_prod_16ic
qa_volk_16ic_x2_multiply_16ic
Overflows in
volk_16ic_x2_dot_prod_16ic
cause sporadic test failures even with the reduced range, as documented in #676; #706 should improve the situation, but in the longer term, either these kernels should be improved to handle overflows consistently, or the limitations of these kernels should be documented and the test framework should ensure that inputs do not stray outside the documented limits.The text was updated successfully, but these errors were encountered: