pub struct AttnV41Run {
pub q: DevicePtr,
pub rows_a: DevicePtr,
pub rows_a_len: usize,
pub rows_b: Option<DevicePtr>,
pub rows_b_len: usize,
pub idx: Vec<i32>,
pub topk: usize,
pub o: DevicePtr,
pub out: DevicePtr,
}Expand description
2026-09-25: The intermediates of one layer’s forward. q and o are bf16
[tokens, n_heads, hd] (q after RoPE, o before the inverse rotation);
rows_a are the window rows (the chunk’s own rows at start_pos == 0,
the ring otherwise); rows_b the kv source’s latent cache, of which
rows_b_len rows are attended; idx is [tokens][topk], window slots
then compressed positions offset by rows_a_len; out is bf16 [tokens, dim].
Fields§
§q: DevicePtr§rows_a: DevicePtr§rows_a_len: usize§rows_b: Option<DevicePtr>§rows_b_len: usize§idx: Vec<i32>§topk: usize§o: DevicePtr§out: DevicePtrAuto Trait Implementations§
impl Freeze for AttnV41Run
impl RefUnwindSafe for AttnV41Run
impl Send for AttnV41Run
impl Sync for AttnV41Run
impl Unpin for AttnV41Run
impl UnwindSafe for AttnV41Run
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