pub struct AttnFacts {
pub attn_layer_idx: usize,
pub kv_dtype: KvCacheDtype,
pub num_q_heads: u32,
pub num_kv_heads: u32,
pub head_dim: u32,
pub gated: bool,
pub rope: RopeFacts,
pub sliding_window: u32,
pub softmax_scale: f32,
pub paged_decode_plain_rows: u128,
}Expand description
2026-09-28: What a full-attention layer’s kernels need beyond its weights.
Fields§
§attn_layer_idx: usize2026-09-28: This layer’s index among the attention layers: its KV-cache layer.
kv_dtype: KvCacheDtype2026-09-28: KV-cache dtype of this layer.
num_q_heads: u322026-09-28: Query heads.
num_kv_heads: u322026-09-28: KV heads.
head_dim: u322026-09-28: Head dim.
gated: bool2026-09-28: Q carries an output gate ([Q | Gate] after the split).
rope: RopeFacts2026-09-28: Rotary embedding.
sliding_window: u322026-09-28: Sliding window in positions; 0 for none.
softmax_scale: f322026-09-28: Softmax scale (effective_attn_scale).
paged_decode_plain_rows: u1282026-09-28: Bit r - 1 is set when the layer’s own decode routing at r rows picks
the plain non-split paged kernel (paged_decode_k): no split-K pair, no GQA-packed
kernel, no 512-wide head kernel.
Implementations§
Trait Implementations§
impl Copy for AttnFacts
impl StructuralPartialEq for AttnFacts
Auto Trait Implementations§
impl Freeze for AttnFacts
impl RefUnwindSafe for AttnFacts
impl Send for AttnFacts
impl Sync for AttnFacts
impl Unpin for AttnFacts
impl UnwindSafe for AttnFacts
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
Mutably borrows from an owned value. Read more