Skip to content
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

BUG: Integer divide tests fail on 32 bit Windows wheel builds. #20216

Closed
charris opened this issue Oct 28, 2021 · 4 comments · Fixed by #20219
Closed

BUG: Integer divide tests fail on 32 bit Windows wheel builds. #20216

charris opened this issue Oct 28, 2021 · 4 comments · Fixed by #20219

Comments

@charris
Copy link
Member

charris commented Oct 28, 2021

This is using vs2019 on Windows server 2019.

FAILED core/tests/test_simd.py::Test_SIMD_ALL_256_AVX2_s64::test_arithmetic_intdiv
FAILED core/tests/test_simd.py::Test_SIMD_ALL_128_SSE42_u64::test_arithmetic_intdiv
FAILED core/tests/test_simd.py::Test_SIMD_ALL_128_SSE42_s64::test_arithmetic_intdiv
FAILED core/tests/test_simd.py::Test_SIMD_ALL_128_baseline_u64::test_arithmetic_intdiv
FAILED core/tests/test_simd.py::Test_SIMD_ALL_128_baseline_s64::test_arithmetic_intdiv
FAILED core/tests/test_umath.py::TestDivision::test_division_int_boundary[int64-np.arange(fo.max-lsize, fo.max, dtype=dtype),np.arange(lsize, dtype=dtype),range(15)]
FAILED core/tests/test_umath.py::TestDivision::test_division_int_boundary[int64-np.arange(fo.min, fo.min+lsize, dtype=dtype),np.arange(lsize//-2, lsize//2, dtype=dtype),range(fo.min, fo.min + 15)]
FAILED core/tests/test_umath.py::TestDivision::test_division_int_boundary[int64-np.arange(fo.max-lsize, fo.max, dtype=dtype),np.arange(lsize, dtype=dtype),[1,3,9,13,neg, fo.min+1, fo.min//2, fo.max//3, fo.max//4]]
FAILED core/tests/test_umath.py::TestDivision::test_division_int_boundary[uint64-np.arange(fo.max-lsize, fo.max, dtype=dtype),np.arange(lsize, dtype=dtype),range(15)]
FAILED core/tests/test_umath.py::TestDivision::test_division_int_boundary[uint64-np.arange(fo.min, fo.min+lsize, dtype=dtype),np.arange(lsize//-2, lsize//2, dtype=dtype),range(fo.min, fo.min + 15)]
FAILED core/tests/test_umath.py::TestDivision::test_division_int_boundary[uint64-np.arange(fo.max-lsize, fo.max, dtype=dtype),np.arange(lsize, dtype=dtype),[1,3,9,13,neg, fo.min+1, fo.min//2, fo.max//3, fo.max//4]]
FAILED ma/tests/test_core.py::TestMaskedArrayInPlaceArithmetic::test_inplace_floor_division_scalar_type
= 16 failed, 18166 passed, 429 skipped, 19 xfailed, 1 xpassed in 2506.14s (0:41:46) =
uh-oh, unmatched shift_free(ptr, 8) but allocated 720
uh-oh, unmatched shift_free(ptr, 8) but allocated 720
uh-oh, unmatched shift_free(ptr, 8) but allocated 720

See https://tinyurl.com/2myhyf8w.

@charris
Copy link
Member Author

charris commented Oct 28, 2021

@mattip The uh-oh, unmatched shift_free(ptr, 8) but allocated 720 seems to be yours.

EDIT: And also shows up on 64 bit windows.
EDIT: And on Linux and Mac

@seberg
Copy link
Member

seberg commented Oct 28, 2021

It seems plausible to me that the test_time_to_time fails for the same reason as the division tests, so would like to wait digging too deep on that until those are cleared out. Or was the situation different (e.g. different machine)?

@charris
Copy link
Member Author

charris commented Oct 28, 2021

@seberg I think you are correct, that crash was a one off.

@mattip
Copy link
Member

mattip commented Oct 28, 2021

The uh-oh, unmatched shift_free(ptr, 8) but allocated 720, as noted in this comment, comes from this pattern np.empty((2, 2, 0, 2, 2)). It calculates the bytes to allocate by multiplying the shape as-if the 0 is 1, but frees 8 bytes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants