pub enum AdaptiveTraversalProgramKind {
Show 13 variants
Popcount,
ClearFrontierOut,
QueueLenInit,
SparseDense,
FrontierToQueue,
FrontierWordCounts,
FrontierWordBlockOffsets,
FrontierWordPrefixQueue,
FrontierWordBlockOffsetsQueue,
QueueForward,
QueueForwardStrided,
QueueSplitLow,
FourRussiansDense,
}Expand description
Primitive-owned resident adaptive traversal program identity.
Self-substrate and future CUDA/WGSL/SPIR-V dispatch layers use this as the stable cache-key taxonomy instead of forking per-wrapper enums.
Variants§
Popcount
Count set bits in the input frontier.
ClearFrontierOut
Clear the output frontier before an OR-writing traversal kernel.
QueueLenInit
Initialize the active queue length before sparse queue compaction.
SparseDense
Device-selected CSR/dense reverse-bitmatrix traversal.
FrontierToQueue
Compact active source ids from a frontier bitset into a queue.
FrontierWordCounts
Compute per-word active-node prefix counts for packed-frontier queues.
FrontierWordBlockOffsets
Convert packed-frontier block totals into exclusive block offsets.
FrontierWordPrefixQueue
Scatter packed frontier words into a deterministic active-source queue.
FrontierWordBlockOffsetsQueue
Scatter packed frontier words using precomputed block offsets.
QueueForward
Consume a compacted active-source queue through CSR rows.
QueueForwardStrided
Consume a compacted active-source queue with lane teams for skewed rows.
QueueSplitLow
Expand low-degree queued rows and compact only high-degree rows.
FourRussiansDense
Dense graph traversal through a reusable Four-Russians byte-tile LUT.
Trait Implementations§
Source§impl Clone for AdaptiveTraversalProgramKind
impl Clone for AdaptiveTraversalProgramKind
Source§fn clone(&self) -> AdaptiveTraversalProgramKind
fn clone(&self) -> AdaptiveTraversalProgramKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for AdaptiveTraversalProgramKind
Source§impl Debug for AdaptiveTraversalProgramKind
impl Debug for AdaptiveTraversalProgramKind
impl Eq for AdaptiveTraversalProgramKind
Source§impl Hash for AdaptiveTraversalProgramKind
impl Hash for AdaptiveTraversalProgramKind
impl StructuralPartialEq for AdaptiveTraversalProgramKind
Auto Trait Implementations§
impl Freeze for AdaptiveTraversalProgramKind
impl RefUnwindSafe for AdaptiveTraversalProgramKind
impl Send for AdaptiveTraversalProgramKind
impl Sync for AdaptiveTraversalProgramKind
impl Unpin for AdaptiveTraversalProgramKind
impl UnsafeUnpin for AdaptiveTraversalProgramKind
impl UnwindSafe for AdaptiveTraversalProgramKind
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.