pub fn gdn_verify_fused_conv_k2(
gpu: &dyn GpuBackend,
kernel: KernelHandle,
conv_state: DevicePtr,
new_input: DevicePtr,
weight: &DenseWeight,
output: DevicePtr,
conv_state_inter: DevicePtr,
d_inner: u32,
d_conv: u32,
qk_channels: u32,
head_dim: u32,
input_stride: u32,
output_stride: u32,
l2_eps: f32,
stream: u64,
) -> Result<()>Expand description
STAGE 1 fused K=2 MTP-verify conv1d+L2norm: both draft positions in one
launch, with the position-0 conv-state snapshot written inline (replaces
the per-token conv1d_update_l2norm ×2 + intervening copy_d2d).
Bit-identical to the per-token path (proven by gdn_verify_fused_microtest,
cos == 1.0). conv_state is left holding the committed (post position-1)
window; conv_state_inter holds the position-0 rollback snapshot.
Kernel: gdn_verify_fused_conv_k2(conv_state, new_input, weight, output, conv_state_inter, dim, d_conv, qk_channels, head_dim, input_stride, output_stride, l2_eps)
Grid: (ceil(dim/256), 1, 1) Block: (256, 1, 1)