pub fn gdn_carry_conv(
gpu: &dyn GpuBackend,
kernel: KernelHandle,
conv_state: DevicePtr,
new_input: DevicePtr,
weight: &DenseWeight,
output: DevicePtr,
conv_stash: DevicePtr,
slot_tab: DevicePtr,
pend: DevicePtr,
stash_seq_elems: u32,
num_tokens: u32,
dim: u32,
d_conv: u32,
qk_channels: u32,
head_dim: u32,
input_stride: u32,
output_stride: u32,
l2_eps: f32,
n_seq: u32,
conv_state_seq_stride: u32,
input_seq_stride: u32,
output_seq_stride: u32,
lazy: bool,
stream: u64,
) -> Result<()>Expand description
2026-09-26: Carried-state conv verify (gdn_carry_conv): the twin of
gdn_verify_fused_conv_kn_batched that first shifts each sequence’s pending input rows
into its window (writing it back when there were any), writes no snapshot and no final
window, and stashes the position inputs at conv_stash + slot * stash_seq_elems. lazy
must match the verify kernel of the same run (gdn_carry_wy{K}_lazy): the window is then
written back only when the stash is full, else on every launch.