pub struct PersistentBfsPlanCacheKey {
pub layout_hash: u64,
pub node_count: u32,
pub edge_count: u32,
pub words_per_query: u32,
pub query_count: u32,
pub allow_mask: u32,
pub max_iters: u32,
pub device_features: u64,
pub kind: PersistentBfsPlanCacheKind,
}Expand description
Primitive-owned persistent-BFS program cache key.
Dispatch wrappers add only backend feature bits; graph identity, frontier width, query count, masks, iteration budget, and plan class are owned here so every backend caches the same primitive program shapes.
Fields§
§layout_hash: u64Stable discriminator for the cached program layout.
Content-addressed graph staging should use crate::graph::persistent_bfs::persistent_bfs_layout_hash.
Program caches should prefer crate::graph::persistent_bfs::persistent_bfs_program_layout_hash so
same-shape CSR contents reuse the same compiled persistent-BFS program.
node_count: u32Number of graph nodes in the primitive program shape.
edge_count: u32Number of logical graph edges in the primitive program shape.
words_per_query: u32Number of frontier words per query.
query_count: u32Number of queries represented by the program.
allow_mask: u32Edge-kind allow mask compiled into the primitive program.
max_iters: u32Iteration budget compiled into the primitive program.
device_features: u64Backend/device feature key supplied by the dispatch wrapper.
kind: PersistentBfsPlanCacheKindSingle-query or batched-query plan kind.
Trait Implementations§
Source§impl Clone for PersistentBfsPlanCacheKey
impl Clone for PersistentBfsPlanCacheKey
Source§fn clone(&self) -> PersistentBfsPlanCacheKey
fn clone(&self) -> PersistentBfsPlanCacheKey
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 PersistentBfsPlanCacheKey
Source§impl Debug for PersistentBfsPlanCacheKey
impl Debug for PersistentBfsPlanCacheKey
impl Eq for PersistentBfsPlanCacheKey
Source§impl Hash for PersistentBfsPlanCacheKey
impl Hash for PersistentBfsPlanCacheKey
impl StructuralPartialEq for PersistentBfsPlanCacheKey
Auto Trait Implementations§
impl Freeze for PersistentBfsPlanCacheKey
impl RefUnwindSafe for PersistentBfsPlanCacheKey
impl Send for PersistentBfsPlanCacheKey
impl Sync for PersistentBfsPlanCacheKey
impl Unpin for PersistentBfsPlanCacheKey
impl UnsafeUnpin for PersistentBfsPlanCacheKey
impl UnwindSafe for PersistentBfsPlanCacheKey
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.