diff --git a/xmrstak/backend/amd/amd_gpu/opencl/cryptonight_gpu.cl b/xmrstak/backend/amd/amd_gpu/opencl/cryptonight_gpu.cl index a99243e4402724057780df88ae64a98cf097933f..0bf4f6e387cb0a226e520b669c0837e0bcd105f4 100644 --- a/xmrstak/backend/amd/amd_gpu/opencl/cryptonight_gpu.cl +++ b/xmrstak/backend/amd/amd_gpu/opencl/cryptonight_gpu.cl @@ -201,7 +201,7 @@ __kernel void JOIN(cn1_cn_gpu,ALGO)(__global int *lpad_in, __global int *spad, u const uint gIdx = getIdx(); #if(COMP_MODE==1) - if(gIdx < Threads) + if(gIdx/16 >= numThreads) return; #endif @@ -368,16 +368,11 @@ __kernel void JOIN(cn0_cn_gpu,ALGO)(__global ulong *input, __global int *Scratch barrier(CLK_LOCAL_MEM_FENCE); -#if(COMP_MODE==1) - // do not use early return here - if(gIdx < Threads) -#endif + for(ulong i = get_local_id(1); i < MEMORY / 512; i += get_local_size(1)) { - for(ulong i = get_local_id(1); i < MEMORY / 512; i += get_local_size(1)) - { - generate_512(i, State, (__global ulong*)((__global uchar*)Scratchpad + i*512)); - } + generate_512(i, State, (__global ulong*)((__global uchar*)Scratchpad + i*512)); } + } )==="