pub struct Schedule {
pub slots: Vec<ScheduleSlot>,
}Expand description
A complete schedule for a function, mapping operations to time slots.
Fields§
§slots: Vec<ScheduleSlot>Ordered time slots.
Implementations§
Source§impl Schedule
impl Schedule
Sourcepub fn total_time(&self) -> usize
pub fn total_time(&self) -> usize
Returns the total number of time steps in the schedule.
Sourcepub fn max_parallelism(&self) -> usize
pub fn max_parallelism(&self) -> usize
Returns the maximum parallelism (most ops in a single slot).
Sourcepub fn is_valid(&self, dfg: &DataflowGraph) -> bool
pub fn is_valid(&self, dfg: &DataflowGraph) -> bool
Returns true if the schedule respects all dependency edges in the DFG.
For every edge from -> to, the time of from must be strictly less
than the time of to.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Schedule
impl RefUnwindSafe for Schedule
impl Send for Schedule
impl Sync for Schedule
impl Unpin for Schedule
impl UnsafeUnpin for Schedule
impl UnwindSafe for Schedule
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