From cb436d5b4afa46c2e16a0ecdd65411db0766e6c9 Mon Sep 17 00:00:00 2001 From: Evghenii Date: Wed, 29 Jan 2014 11:55:33 +0100 Subject: [PATCH] +1 --- examples_ptx/radixSort/radixSort.ispc | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/examples_ptx/radixSort/radixSort.ispc b/examples_ptx/radixSort/radixSort.ispc index 48715a63..66e2defa 100644 --- a/examples_ptx/radixSort/radixSort.ispc +++ b/examples_ptx/radixSort/radixSort.ispc @@ -1,4 +1,4 @@ -#define NUMBITS 4 +#define NUMBITS 8 #define NUMDIGITS (1<> bit); int scatter; + /* not a vector friendly loop */ foreach_active(iv) scatter = digitOffsets[key]++; sorted [scatter] = keys[i]; @@ -100,7 +99,6 @@ void partialScanLocal( uniform int (* uniform excScanBlock)[NUMDIGITS] = (uniform int (*)[NUMDIGITS])excScanAll; uniform int (* uniform partialSum)[NUMDIGITS] = (uniform int (*)[NUMDIGITS])partialSumAll; -#if 0 foreach (digit = 0 ... NUMDIGITS) { int prev = bbeg == 0 ? excScanBlock[0][digit] : 0; @@ -112,21 +110,6 @@ void partialScanLocal( } partialSum[blockIdx][digit] = excScanBlock[bend-1][digit] + countsBlock[bend-1][digit]; } -#else - int prev[NUMDIGITS]; - for (int digit = 0; digit < NUMDIGITS; digit++) - prev[digit] = bbeg == 0 ? excScanBlock[0][digit] : 0; - - foreach_tiled (block = bbeg ... bend, digit = 0 ... NUMDIGITS) - { - const int y = countsBlock[block][digit]; - excScanBlock[block][digit] = prev[digit]; - prev[digit] += y; - } - - foreach (digit = 0 ... NUMDIGITS) - partialSum[blockIdx][digit] = excScanBlock[bend-1][digit] + countsBlock[bend-1][digit]; -#endif } task