diff --git a/test/test_algorithm.py b/test/test_algorithm.py
index fc31e8c540560fc5413ccf3e5fd8eac2c18b5945..59fa60f03adb6068247a4fe95678164b81fa88df 100644
--- a/test/test_algorithm.py
+++ b/test/test_algorithm.py
@@ -245,10 +245,16 @@ def test_sum(ctx_factory):
 
         a = a_gpu.get()
 
-        sum_a = np.sum(a)
-        sum_a_gpu = cl_array.sum(a_gpu).get()
-
-        assert abs(sum_a_gpu - sum_a) / abs(sum_a) < 1e-4
+        for slc in [
+                slice(None),
+                slice(1000, 3000),
+                slice(1000, -3000),
+                slice(1000, None),
+                ]:
+            sum_a = np.sum(a[slc])
+            sum_a_gpu = cl_array.sum(a_gpu[slc]).get()
+
+            assert abs(sum_a_gpu - sum_a) / abs(sum_a) < 1e-4
 
 
 @pytools.test.mark_test.opencl