From d39f75422d74b1cd27828f505ba8b9f92009e46d Mon Sep 17 00:00:00 2001 From: Andy Jost Date: Mon, 12 Jan 2026 10:35:51 -0800 Subject: [PATCH] Fix slow test_patterngen_seeds on Windows by sampling MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace exhaustive O(n²) pairwise seed testing with prime-stride sampling, reducing iterations from ~32k to ~100 while maintaining meaningful coverage. Closes #1455 --- cuda_core/tests/test_helpers.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/cuda_core/tests/test_helpers.py b/cuda_core/tests/test_helpers.py index 51cf1af3f4..76712e8432 100644 --- a/cuda_core/tests/test_helpers.py +++ b/cuda_core/tests/test_helpers.py @@ -47,10 +47,6 @@ def test_latchkernel(): log("done") -@pytest.mark.skipif( - IS_WINDOWS, - reason="Extremely slow on Windows (issue #1455).", -) @pytest.mark.skipif( under_compute_sanitizer(), reason="Too slow under compute-sanitizer (UVM-heavy test).", @@ -62,11 +58,13 @@ def test_patterngen_seeds(): buffer = make_scratch_buffer(device, 0, NBYTES) # All seeds are pairwise different. + # We test a sampling of values because exhaustive testing is too slow, + # especially on Windows. See https://github.com/NVIDIA/cuda-python/issues/1455 pgen = PatternGen(device, NBYTES) - for i in range(256): + for i in (ii for ii in range(0, 256) if ii < 5 or ii % 17 == 0): pgen.fill_buffer(buffer, seed=i) pgen.verify_buffer(buffer, seed=i) - for j in range(i + 1, 256): + for j in (jj for jj in range(i + 1, 256) if jj < 5 or jj % 19 == 0): with pytest.raises(AssertionError): pgen.verify_buffer(buffer, seed=j)