pub struct FusedPlan {
pub input_count: usize,
pub outputs: Vec<usize>,
pub ops: Vec<FusedInst>,
}Expand description
Topologically ordered fused elementwise SSA DAG.
Values are numbered in evaluation order. Input values occupy
0..input_count; each instruction appends one value after the previous
inputs/instructions. For example, with input_count == 2, the first
instruction writes value 2, the second writes value 3, and so on.
outputs contains the value ids to write to dests in order.
All inputs and destinations passed to fused_elementwise_into must have
the same shape and scalar type. Broadcast inputs should be represented with
StridedView::broadcast before building the plan; the fused API does not
perform implicit broadcasting.
Fields§
§input_count: usize§outputs: Vec<usize>§ops: Vec<FusedInst>Trait Implementations§
impl Eq for FusedPlan
impl StructuralPartialEq for FusedPlan
Auto Trait Implementations§
impl Freeze for FusedPlan
impl RefUnwindSafe for FusedPlan
impl Send for FusedPlan
impl Sync for FusedPlan
impl Unpin for FusedPlan
impl UnsafeUnpin for FusedPlan
impl UnwindSafe for FusedPlan
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more