Если абсолютно необходимо, чтобы все потоки в блоке находились в одной и той же точке кода, требуется ли __syncthreads, если количество запускаемых потоков равно количеству потоков в варпе?
Примечание. Никаких дополнительных потоков или блоков, только один варп для ядра.
Пример кода:
shared _voltatile_ sdata[16];
int index = some_number_between_0_and_15;
sdata[tid] = some_number;
output[tid] = x ^ y ^ z ^ sdata[index];