Skip to main content

LoweringPlan

Struct LoweringPlan 

Source
pub struct LoweringPlan { /* private fields */ }
Expand description

A completely admitted lowering bound to one canonical Tensor executor.

Construction performs all provider, geometry, shape, allocation, and accuracy checks and creates every local-coordinate Tensor. Calling execute never selects a different executor.

Implementations§

Source§

impl LoweringPlan

Source

pub fn preflight( cx: &mut Cx, problem: &InterferenceProblem, plane: SamplingPlane, budget: PhaseBudget, profile: TileProfile, ) -> Result<Self, LoweringError>

Preflights a complete request against the active environment executor.

When the environment has no active executor, the canonical CPU executor is captured. No Tensor request is submitted by this constructor.

Source

pub fn executor_card(&self) -> &TensorExecutorCard

Returns the captured executor descriptor.

Source

pub fn tile_plan(&self) -> &TilePlan

Returns the complete tile plan.

Source

pub fn max_phase_estimate(&self) -> SourcePhaseEstimate

Returns the maximum estimate across every source and tile.

Source

pub fn phase_budget(&self) -> PhaseBudget

Returns the admitted residual-phase and predicted-error limits.

Source

pub fn source_constants( &self, tile_index: usize, ) -> Option<&[SourceTileConstants]>

Returns the prepared source constants for one tile.

Source

pub fn execute(&self, cx: &mut Cx) -> Result<Vec<LoweredTile>, LoweringError>

Executes every prepared tile through the captured executor.

Provider errors after accepted work are returned as execution failures; this method never restarts a tile on another executor.

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

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.