Fix race in indexer topk on CUDA (#2148)

This commit is contained in:
Kawrakow
2026-07-17 18:08:18 +03:00
committed by GitHub
parent 2b8d0d5011
commit fbcc743c70
+2
View File
@@ -240,7 +240,9 @@ static __global__ void k_indexer_mask(int ne0, int ne1, int ne2, int ntopk, int
if (i1 < ne11) {
for (int j = threadIdx.x; j < ne0; j += blockDim.x) d[j] = inf;
__syncthreads();
for (int j = threadIdx.x; j < ntopk; j += blockDim.x) d[i[j]] = zero;
__syncthreads();
for (int j = threadIdx.x; j < ne0; j += blockDim.x) d[j] += m[j];
} else {
for (int j = threadIdx.x; j < ne0; j += blockDim.x) d[j] = m[j];