pub fn moe_batched_blend(
gpu: &dyn GpuBackend,
kernel: KernelHandle,
output: DevicePtr,
shared_out: DevicePtr,
normed: DevicePtr,
gate_weight: DevicePtr,
hidden_size: u32,
num_tokens: u32,
stream: u64,
) -> Result<()>Expand description
2026-09-25: output[t] += sigmoid(dot(normed[t], gate_weight)) * shared_out[t], one block per
token. A null gate_weight blends at weight 1.