Skip to main content

eval_loop_fabric_at_ii

Function eval_loop_fabric_at_ii 

Source
pub fn eval_loop_fabric_at_ii(
    lf: &LoopFabric,
    params: &[i64],
    ii: usize,
    model: &UnitModel,
) -> PipelinedRun
Expand description

Execute a counted loop as a pipeline issuing one iteration every ii cycles. Iteration t issues at cycle t*ii, reads each carried register’s value as of that cycle (the latest write whose completion cycle <= the issue cycle), and completes register k’s write at t*ii + depth_k. With ii >= the recurrence II every read sees the previous iteration’s write and the result equals eval_loop_fabric; below it, reads are stale (hazards).