pub struct GdnFlags {
pub h_f16: bool,
pub h_f16_pool: bool,
pub fused_norm: bool,
pub batched_recurrent: bool,
pub exact_verify: bool,
}Fields§
§h_f16: bool2026-09-25: --ssm-h-dtype f16 (or f16-pool): store the GDN decode
h-state as FP16.
h_f16_pool: bool2026-09-25: --ssm-h-dtype f16-pool: also size the h pools at 2 bytes
per element. Always set together with h_f16 (a narrow pool holding
FP32 would be an out-of-bounds write).
fused_norm: bool2026-09-25: --gdn-fused-norm: fused GDN output-norm decode kernel.
batched_recurrent: bool2026-09-25: --ssm-batched-recurrent: one strided recurrent launch per
batch.
exact_verify: bool2026-09-25: --exact-verify: MTP verify runs the sequential-decode-exact
per-token GDN/SSM chain instead of the WY-chunkwise and fused BF16-conv
arms. Off by default. It makes only the GDN/SSM verify chain exact; the
FFN and attention projections still pick kernels by row count.
Implementations§
Source§impl GdnFlags
impl GdnFlags
Sourcepub fn verify_exact_active(self) -> bool
pub fn verify_exact_active(self) -> bool
2026-09-25: Whether the MTP-verify pass runs the exact chain:
exact_verify. Pure, so tests need not touch the process-wide cell.
2026-10-01: Also under an FP16 h-state, which runs the FP16 twins of the
exact chain (gdn_exact_chain_f16_{K}); a kernel set without them
refuses the serve at the boot audit (carry.rs).
Trait Implementations§
impl Copy for GdnFlags
impl Eq for GdnFlags
impl StructuralPartialEq for GdnFlags
Auto Trait Implementations§
impl Freeze for GdnFlags
impl RefUnwindSafe for GdnFlags
impl Send for GdnFlags
impl Sync for GdnFlags
impl Unpin for GdnFlags
impl UnwindSafe for GdnFlags
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.