ITADN

请教一个online softmax 实现的问题

#397OpenHolworth 创建于 2025-11-09
stale
H
Holworthcommented
在online_safe_softmax_f32_per_token_kernel这个kernel的实现中,每个warp首先归约得到m和d并写入共享内存中,再由block内部分线程进行第二轮warp reduce来得到整个线程块规约的m和d。我的疑问是:https://github.com/xlite-dev/LeetCUDA/blob/228342c2b7cb5d97a0d0e8fc9ac68b215b2f18f6/kernels/softmax/softmax.cu#L350 这里是否应该判断``local_tid < WARP_NUM``, 并且对不满足该条件的线程用MD的identity赋值,否则这里的判断有越界访问shared数组的风险?
1 条评论