diff --git a/src/radix_sort_par3.cu b/src/radix_sort_par3.cu index b0701f5f28d6a45f522c895dfb2c5fd07b0c0f42..cb91cab4b15016c1b4da3ebe254b05d358d88348 100644 --- a/src/radix_sort_par3.cu +++ b/src/radix_sort_par3.cu @@ -15,7 +15,10 @@ int getMax(int arr[], int n) } __global__ void storeCount(int *count, int *arr, int n, int exp){ - for (int i = 0; i < n; i++) + int index = threadIdx.x; + int stride = blockDim.x; + + for (int i = index; i < n; i+=stride) count[ (arr[i]/exp)%10 ]++; }