pub struct StepResourceLease<R>where
R: DeviceRuntime,{ /* private fields */ }Expand description
Resources whose lifetime is one exact continuous-batch execution frame.
Child invocation leases retain this scope through Arc, so shared frame
capacity and every participant authority outlive asynchronous device work.
Implementations§
Source§impl<R> StepResourceLease<R>where
R: DeviceRuntime,
impl<R> StepResourceLease<R>where
R: DeviceRuntime,
pub const fn batch_step_id(&self) -> BatchStepId
pub fn execution_lane(&self) -> &Arc<ExecutionLane<R>> ⓘ
pub fn reusable_execution_bucket(&self) -> Option<&ReusableExecutionBucketSpec>
pub fn try_retire_normal( self: Arc<Self>, ) -> Result<StepRetirementReceipt, StepFinalizationFailure<R>>
pub fn try_abort( self: Arc<Self>, ) -> Result<StepRetirementReceipt, StepFinalizationFailure<R>>
Sourcepub fn try_rollback_unsubmitted(
self: Arc<Self>,
) -> Result<StepRetirementReceipt, StepFinalizationFailure<R>>
pub fn try_rollback_unsubmitted( self: Arc<Self>, ) -> Result<StepRetirementReceipt, StepFinalizationFailure<R>>
Releases a capacity-deferred step before any invocation was prepared or
submitted. Unlike try_abort, this leaves every participant session open
so the scheduler can retry after the exact capacity source advances.
pub fn participant_count(&self) -> u32
pub fn coordinator_id(&self) -> LogicalAdmissionCoordinatorId
pub fn participants( &self, ) -> impl ExactSizeIterator<Item = &Arc<AdmittedSequenceResources<R>>>
pub fn participant_frames( &self, ) -> impl ExactSizeIterator<Item = StepParticipantFrameAssignment> + '_
pub fn backing_slices(&self) -> &[LogicalBackingSliceAuthority]
pub fn logical_capacity(&self) -> Option<&LogicalBatchCapacityLease>
pub fn work_shape(&self) -> &BatchWorkShape
pub fn bind_invocation_work_shape( &self, participant_tokens: Vec<(BatchParticipantAuthority, TokenSpanWork)>, ) -> Result<BatchWorkShape, VNextError>
pub fn bind_all_invocation_work_shape( &self, token_spans: Vec<TokenSpanWork>, ) -> Result<BatchWorkShape, VNextError>
Reuses the exact immutable work authority admitted for this step when a submission wave binds the same participants and token spans.
pub fn claimed_backing(&self) -> &ClaimedBackingTransaction
pub fn static_provisioning(&self) -> Option<&StaticProvisioningLease<R>>
pub fn plan_evidence(&self) -> TrustedPlanRuntimeEvidence
pub fn try_admit_invocation( self: &Arc<Self>, request: InvocationResourceAdmissionRequest, ) -> Result<InvocationResourceAdmissionDecision<R>, VNextError>
pub fn try_prepare_submission_wave( self: &Arc<Self>, requests: Vec<InvocationResourceAdmissionRequest>, ) -> Result<StepSubmissionWaveAdmissionDecision<R>, VNextError>
Sourcepub fn try_prepare_determinism_submission_wave(
self: &Arc<Self>,
requests: Vec<InvocationResourceAdmissionRequest>,
) -> Result<StepSubmissionWaveAdmissionDecision<R>, VNextError>
pub fn try_prepare_determinism_submission_wave( self: &Arc<Self>, requests: Vec<InvocationResourceAdmissionRequest>, ) -> Result<StepSubmissionWaveAdmissionDecision<R>, VNextError>
Prepares a canonical immutable-plan node subset that can only be submitted through the exact determinism restore/readback path.
Sourcepub fn try_prepare_full_plan_submission_wave(
self: &Arc<Self>,
work_shape: Arc<BatchWorkShape>,
fit_policy: AdmissionFitPolicy,
pressure_action: AdmissionPressureAction,
) -> Result<StepSubmissionWaveAdmissionDecision<R>, VNextError>
pub fn try_prepare_full_plan_submission_wave( self: &Arc<Self>, work_shape: Arc<BatchWorkShape>, fit_policy: AdmissionFitPolicy, pressure_action: AdmissionPressureAction, ) -> Result<StepSubmissionWaveAdmissionDecision<R>, VNextError>
Prepares the only production wave topology: every immutable-plan node in order over one shared participant/work authority. Callers do not rebuild a per-node request vector for topology already committed by the plan hash.