pub fn silu_mul(
gpu: &dyn GpuBackend,
kernel: KernelHandle,
gate: DevicePtr,
up: DevicePtr,
output: DevicePtr,
num_elements: u32,
stream: u64,
) -> Result<()>Expand description
2026-09-25: output = act(gate) * up over num_elements BF16 values, where kernel
fixes the activation: callers pass moe_silu_mul (SiLU) or, for a GeLU FFN, gelu_mul.
The moe_silu_mul.cu copies in gb10/deepseek-v4-flash (also compiled for
longcat-flash-lite) and gb10/step3p7-flash first clamp gate to at most 10 and up
to [-10, 10].