diff --git a/tests/bitonic_tests/unitTests.cu b/tests/bitonic_tests/unitTests.cu
index 53fe8b3b5636b6c0cef1e2072a1dab15cf3e83f4..3e0ce07b7dd3525a7163c8199fe61a4196f3e8fa 100644
--- a/tests/bitonic_tests/unitTests.cu
+++ b/tests/bitonic_tests/unitTests.cu
@@ -12,9 +12,9 @@
 
 //----------------------------------------------------------------------------------
 
-TEST(permutations, allPermutationSize_1_to_8)
+TEST(permutations, allPermutationSize_2_to_7)
 {
-    for(int i = 2; i<=8; i++ )
+    for(int i = 2; i<=7; i++ )
     {
         int size = i;
         std::vector<int> orig(size);
@@ -33,6 +33,30 @@ TEST(permutations, allPermutationSize_1_to_8)
     }
 }
 
+TEST(permutations, allPermutationSize_8)
+{
+    int size = 9;
+    const int stride = 151;
+    int i = 0;
+
+    std::vector<int> orig(size);
+    std::iota(orig.begin(), orig.end(), 0);
+
+    do
+    {
+        if ((i++) % stride != 0)
+            continue;
+
+        TNL::Containers::Array<int, TNL::Devices::Cuda> cudaArr(orig);
+        auto view = cudaArr.getView();
+
+        bitonicSort(view);
+
+        ASSERT_TRUE(is_sorted(view)) << "result " << view << std::endl;
+    }
+    while (std::next_permutation(orig.begin(), orig.end()));
+}
+
 TEST(permutations, somePermutationSize9)
 {
     int size = 9;