pub fn list_schedule(dfg: &DataflowGraph) -> ScheduleExpand description
Perform list scheduling on a dataflow graph.
Uses critical-path-based priority: nodes on or near the critical path are scheduled first. This is a greedy heuristic that works well for many practical cases.
ยงAlgorithm
- Compute critical path distances for all nodes.
- Initialize ready set with nodes that have no predecessors.
- At each time step, select the highest-priority ready node(s).
- After scheduling a node, add newly ready successors.
- Continue until all nodes are scheduled.