DsaSelectGeometry

Struct DsaSelectGeometry 

Source
pub struct DsaSelectGeometry {
    pub seq: usize,
    pub q_rows: usize,
    pub n_pools_full: usize,
    pub n_pools: usize,
    pub select_k: usize,
    pub out_width: usize,
    pub topk_np2: usize,
    pub topk_smem: usize,
    pub index_head_dim: usize,
    pub index_heads: usize,
    pub index_kpool: usize,
}
Expand description

Launch geometry for one selection pass — every count the four kernels need, and every capacity check, decided before a single pointer is touched.

Fields§

§seq: usize

Tokens resident in the indexer cache.

§q_rows: usize

Query rows selecting this pass (1 on a batch-1 decode step).

§n_pools_full: usize

Pools dsa_kpool_compress writes, including the trailing partial one.

§n_pools: usize

Pools that are real — the prefix everything downstream reads.

§select_k: usize

Pools selected per query.

§out_width: usize

Emitted index-row width.

§topk_np2: usize

Tile width the top-k select walks the pool axis in (clamped down below one tile).

§topk_smem: usize

Shared memory dsa_topk_pools needs, in bytes.

§index_head_dim: usize

Channels per compress block.

§index_heads: usize§index_kpool: usize

Implementations§

Source§

impl DsaSelectGeometry

Source

pub fn plan(cfg: &Glm5NextDsaConfig, seq: usize, q_rows: usize) -> Result<Self>

Plan a selection over a contiguous, unpadded cache.

Fails rather than truncates when the pool axis outgrows the top-k kernel’s shared-memory budget.

Trait Implementations§

Source§

impl Clone for DsaSelectGeometry

Source§

fn clone(&self) -> DsaSelectGeometry

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for DsaSelectGeometry

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for DsaSelectGeometry

Source§

fn eq(&self, other: &DsaSelectGeometry) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for DsaSelectGeometry

Source§

impl Eq for DsaSelectGeometry

Source§

impl StructuralPartialEq for DsaSelectGeometry

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more