Skip to main content

EpistemicGpuRuntimePreflight

Struct EpistemicGpuRuntimePreflight 

Source
pub struct EpistemicGpuRuntimePreflight {
Show 32 fields pub epistemic_mode: EirEpistemicMode, pub workspace_layout: EpistemicGpuWorkspaceLayout, pub reduced_runtime_rule_count: usize, pub reduced_constraint_relation_count: usize, pub wcoj_required_reduction_count: usize, pub multiway_reduction_count: usize, pub kclique_wcoj_plan_count: usize, pub wcoj_triangle_route_count: usize, pub wcoj_4cycle_route_count: usize, pub free_join_route_count: usize, pub kclique_wcoj_plan_count_by_arity: [usize; 4], pub kclique_wcoj_max_arity: u8, pub kclique_wcoj_edge_permutation_count: usize, pub kclique_stream_group_count: usize, pub kclique_skew_scheduled_plan_count: usize, pub planned_hash_route_count: usize, pub planned_hash_planner_wins_count: usize, pub planned_hash_incomplete_stats_count: usize, pub planned_hash_cost_evidence_count: usize, pub sorted_layout_requirement_count: usize, pub helper_split_spec_count: usize, pub helper_relation_rule_count: usize, pub helper_relation_scan_count: usize, pub tuple_membership_binding_count: usize, pub solver_assumption_binding_count: usize, pub solver_required_capability_count: usize, pub solver_required_status_count: usize, pub know_operator_count: usize, pub possible_operator_count: usize, pub not_know_operator_count: usize, pub not_possible_operator_count: usize, pub cpu_fallbacks: EpistemicCpuFallbackCounters,
}
Expand description

Runtime preflight summary for an epistemic executable plan.

Fields§

§epistemic_mode: EirEpistemicMode

Selected epistemic semantics mode for the accepted GPU execution.

§workspace_layout: EpistemicGpuWorkspaceLayout

GPU workspace layout required by the executable plan.

§reduced_runtime_rule_count: usize

Compiled reduced-runtime rule count.

§reduced_constraint_relation_count: usize

Compiler-generated reduced integrity-constraint relations to validate.

§wcoj_required_reduction_count: usize

Reduced rules that the epistemic planner marked as requiring WCOJ eligibility.

§multiway_reduction_count: usize

Number of reduced rules carrying a MultiWayJoin route.

§kclique_wcoj_plan_count: usize

Number of K-clique WCOJ plans reused from the production planner.

§wcoj_triangle_route_count: usize

Number of triangle WCOJ routes reused from the production runtime.

§wcoj_4cycle_route_count: usize

Number of 4-cycle WCOJ routes reused from the production runtime.

§free_join_route_count: usize

Generic Free Join multiway routes: plan: None nodes matching no dedicated kernel shape. Opportunistic by contract — the dispatcher may structurally decline to the embedded binary fallback (non-prefix bound columns, non-u32 inputs, …), so these routes carry no hard dispatch obligation and are excluded from the dedicated-WCOJ certification arithmetic.

§kclique_wcoj_plan_count_by_arity: [usize; 4]

K-clique WCOJ plan counts by arity K=5..8.

§kclique_wcoj_max_arity: u8

Maximum K-clique arity observed across production WCOJ plans.

§kclique_wcoj_edge_permutation_count: usize

Live edge-permutation slots carried by production K-clique plans.

§kclique_stream_group_count: usize

Distinct K-clique stream groups carried by production WCOJ plans.

§kclique_skew_scheduled_plan_count: usize

K-clique WCOJ plans carrying helper-split skew scheduling metadata.

§planned_hash_route_count: usize

Number of structured planned-hash routes.

§planned_hash_planner_wins_count: usize

Planned-hash routes where complete planner costs predicted hash wins.

§planned_hash_incomplete_stats_count: usize

Planned-hash routes selected because complete WCOJ stats were unavailable.

§planned_hash_cost_evidence_count: usize

Planned-hash routes carrying finite hash-vs-WCOJ cost evidence.

§sorted_layout_requirement_count: usize

Sorted-layout edge-slot requirements carried by WCOJ plans.

§helper_split_spec_count: usize

Helper-splitting specs carried by WCOJ plans.

§helper_relation_rule_count: usize

Compiler-created helper-split relation rules in the reduced runtime plan.

§helper_relation_scan_count: usize

WCOJ input scans of compiler-created helper-split relations.

§tuple_membership_binding_count: usize

Tuple-membership bindings certified for stable-model membership checks.

§solver_assumption_binding_count: usize

Solver assumption bindings exported by the semantic plan.

§solver_required_capability_count: usize

Solver production capabilities required by the semantic plan.

§solver_required_status_count: usize

Distinct solver statuses required by the semantic plan.

§know_operator_count: usize

Non-negated know operators represented by the executable GPU plan.

§possible_operator_count: usize

Non-negated possible operators represented by the executable GPU plan.

§not_know_operator_count: usize

Negated know operators represented as not know.

§not_possible_operator_count: usize

Negated possible operators represented as not possible.

§cpu_fallbacks: EpistemicCpuFallbackCounters

Forbidden CPU fallback counters copied from the GPU semantic contract.

Implementations§

Source§

impl EpistemicGpuRuntimePreflight

Source

pub fn is_g91_mode(&self) -> bool

Whether this accepted execution used Gelfond-1991 (G91) compatibility semantics.

Source

pub fn is_faeel_mode(&self) -> bool

Whether this accepted execution used default FAEEL semantics.

Source

pub fn for_executable_plan( executable: &EpistemicExecutablePlan, capacities: EpistemicGpuWorkspaceCapacities, ) -> Result<Self>

Inspect an executable epistemic plan before GPU kernel dispatch.

Trait Implementations§

Source§

impl Clone for EpistemicGpuRuntimePreflight

Source§

fn clone(&self) -> EpistemicGpuRuntimePreflight

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 EpistemicGpuRuntimePreflight

Source§

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

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

impl PartialEq for EpistemicGpuRuntimePreflight

Source§

fn eq(&self, other: &EpistemicGpuRuntimePreflight) -> 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 EpistemicGpuRuntimePreflight

Source§

impl Eq for EpistemicGpuRuntimePreflight

Source§

impl StructuralPartialEq for EpistemicGpuRuntimePreflight

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

Checks if this value is equivalent to the given key. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,