Mercurial > hg > Game > Cerium
view example/bitonic_sort/cuda/swap.cu @ 2069:26aa08c9a1de draft default tip
cuda example fix
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 12 Feb 2017 10:04:55 +0900 |
parents | bc010492ade4 |
children |
line wrap: on
line source
extern "C" { __global__ void swap(long* param, int* Data) { long block = param[0]; long first = param[1]; int x = blockIdx.x*blockDim.x+threadIdx.x; int position = x/block; int index = x+block*position; block = (first == 1) ? ((block<<1)*(position+1))-(index%block)-1 : index+block; if (Data[block] < Data[index]) { int tmp = Data[index]; Data[index] = Data[block]; Data[block] = tmp; } } }