pub struct PlanSummary {Show 16 fields
pub phase: Phase,
pub sites_used: usize,
pub grid: (usize, usize),
pub per_site_block: (usize, usize),
pub block: Option<BlockShape>,
pub num_blocks: usize,
pub streaming: bool,
pub multicast_groups: usize,
pub row_groups: usize,
pub col_groups: usize,
pub acc: Option<AccPolicy>,
pub dram_tiles_read: u64,
pub semaphores: usize,
pub fifos: usize,
pub engine_program_classes: usize,
pub engines: EnginePacking,
}Expand description
The emergent plan, REPORTED from structure — never an input.
Fields§
§phase: Phase§sites_used: usize§grid: (usize, usize)§per_site_block: (usize, usize)§block: Option<BlockShape>§num_blocks: usize§streaming: bool§multicast_groups: usize§row_groups: usize§col_groups: usize§acc: Option<AccPolicy>§dram_tiles_read: u64§semaphores: usize§fifos: usize§engine_program_classes: usize§engines: EnginePackingHow the site’s movement work is packed onto its engines (part of the arrangement a ledger row names).
Implementations§
Source§impl PlanSummary
impl PlanSummary
Sourcepub fn arrangement_label(&self) -> &'static str
pub fn arrangement_label(&self) -> &'static str
The emergent arrangement, as a label. The arrangement a measurement names. The movement packing is part of it: two programs that differ only in which engine carries the store are DIFFERENT arrangements, and a ledger must not let one supersede the other.
Trait Implementations§
Source§impl Clone for PlanSummary
impl Clone for PlanSummary
Source§fn clone(&self) -> PlanSummary
fn clone(&self) -> PlanSummary
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PlanSummary
impl Debug for PlanSummary
Source§impl<'de> Deserialize<'de> for PlanSummary
impl<'de> Deserialize<'de> for PlanSummary
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for PlanSummary
impl PartialEq for PlanSummary
Source§impl Serialize for PlanSummary
impl Serialize for PlanSummary
impl Eq for PlanSummary
impl StructuralPartialEq for PlanSummary
Auto Trait Implementations§
impl Freeze for PlanSummary
impl RefUnwindSafe for PlanSummary
impl Send for PlanSummary
impl Sync for PlanSummary
impl Unpin for PlanSummary
impl UnsafeUnpin for PlanSummary
impl UnwindSafe for PlanSummary
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§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.