alkaid.trace.passes package
Submodules
alkaid.trace.passes.canon module
alkaid.trace.passes.cse module
- alkaid.trace.passes.cse.redirect_all(used_in, new_ops, new_out_idxs, i_from, i_to)
alkaid.trace.passes.dce module
- alkaid.trace.passes.dce.dead_code_elimin(comb: CombLogic, keep_dead_inputs=False) CombLogic
dead code elimination
- alkaid.trace.passes.dce.remap_table_idxs(ops: list[Op], tables: tuple[LookupTable, ...] | None)
alkaid.trace.passes.null_op module
alkaid.trace.passes.order module
alkaid.trace.passes.retrace module
alkaid.trace.passes.surrogate module
- alkaid.trace.passes.surrogate.add_surrogate(comb: CombLogic) CombLogic
Add surrogate cost and latency
- alkaid.trace.passes.surrogate.cost_lat_add(qint0: QInterval, qint1: QInterval, shift1: int, n_add: int, n_accum: int)
- alkaid.trace.passes.surrogate.cost_lat_bin_bitops(qint0: QInterval, qint1: QInterval, shift1: int, LUT_X: int, LUT_Y: int)
- alkaid.trace.passes.surrogate.cost_lat_lut(qint_in: QInterval, table: LookupTable, LUT_X: int, LUT_Y: int, skip_cost: bool = False)
- alkaid.trace.passes.surrogate.cost_lat_mul(qint0: QInterval, qint1: QInterval, n_add: int, n_accum: int)
- alkaid.trace.passes.surrogate.cost_lat_mux(qint0: QInterval, qint1: QInterval, shift1: int, LUT_X: int, LUT_Y: int)
- alkaid.trace.passes.surrogate.cost_lat_op(idx: int, ops: list[Op], hwconf: HWConfig, lut: tuple[LookupTable, ...] | None, used_in: dict[int, set[int]]) tuple[float, float]