pub struct DispatchPolicyVerdict {
pub persistent: PersistentKernelDecision,
pub arm_independence: ArmIndependenceVerdict,
pub copy_overlap: Option<CopyOverlapDecision>,
pub command_reuse: CommandReuseDecision,
pub bindless: BindlessDecision,
pub trace_jit: TraceJitDecision,
}Expand description
Result bundle from a single dispatch-policy invocation. Every sub-substrate verdict appears in its typed form.
Fields§
§persistent: PersistentKernelDecisionD1 persistent-kernel verdict.
arm_independence: ArmIndependenceVerdictD2 arm-independence verdict for the (arm_a, arm_b) pair.
copy_overlap: Option<CopyOverlapDecision>None when the inputs had no copy_dst_slot; otherwise
the D3 substrate’s verdict for that copy.
command_reuse: CommandReuseDecisionD4 command-reuse verdict.
bindless: BindlessDecisionD9 bindless verdict.
trace_jit: TraceJitDecisionI2 trace-JIT speculation verdict.
Implementations§
Source§impl DispatchPolicyVerdict
impl DispatchPolicyVerdict
Sourcepub fn primary_execution_mode(&self) -> DispatchExecutionMode
pub fn primary_execution_mode(&self) -> DispatchExecutionMode
Return the mutually exclusive primary launch strategy.
D1 persistent kernels and D4 command reuse can both be profitable on paper. A concrete dispatcher cannot run both for the same launch group, so this resolver chooses the higher predicted savings. Equal savings prefer command reuse because it avoids persistent queue residency.
Trait Implementations§
Source§impl Clone for DispatchPolicyVerdict
impl Clone for DispatchPolicyVerdict
Source§fn clone(&self) -> DispatchPolicyVerdict
fn clone(&self) -> DispatchPolicyVerdict
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for DispatchPolicyVerdict
impl RefUnwindSafe for DispatchPolicyVerdict
impl Send for DispatchPolicyVerdict
impl Sync for DispatchPolicyVerdict
impl Unpin for DispatchPolicyVerdict
impl UnsafeUnpin for DispatchPolicyVerdict
impl UnwindSafe for DispatchPolicyVerdict
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