b_asic.scheduler
¶
- class b_asic.scheduler.ALAPScheduler(input_times: dict[GraphID, int] | None = None, output_delta_times: dict[GraphID, int] | None = None)¶
Bases:
Scheduler
Scheduler that implements the as-late-as-possible (ALAP) algorithm.
- class b_asic.scheduler.ASAPScheduler(input_times: dict[GraphID, int] | None = None, output_delta_times: dict[GraphID, int] | None = None)¶
Bases:
Scheduler
Scheduler that implements the as-soon-as-possible (ASAP) algorithm.
- class b_asic.scheduler.ListScheduler(sort_order: tuple[tuple[int, bool], ...], max_resources: dict[TypeName, int] | None = None, max_concurrent_reads: int | None = None, max_concurrent_writes: int | None = None, input_times: dict[GraphID, int] | None = None, output_delta_times: dict[GraphID, int] | None = None)¶
Bases:
Scheduler
List-based scheduler that schedules the operations while complying to the given constraints.
- Parameters:
- sort_ordertuple[tuple[int, bool]]
Specifies which columns in the priority table to sort on and in which order, where True is ascending order.
- max_resourcesdict[TypeName, int] | None, optional
Max resources available to realize the schedule, by default None
- max_concurrent_readsint | None, optional
Max number of conccurent reads, by default None
- max_concurrent_writesint | None, optional
Max number of conccurent writes, by default None
- input_timesdict[GraphID, int] | None, optional
Specified input times, by default None
- output_delta_timesdict[GraphID, int] | None, optional
Specified output delta times, by default None
- class b_asic.scheduler.RecursiveListScheduler(sort_order: tuple[tuple[int, bool], ...], max_resources: dict[TypeName, int] | None = None, input_times: dict[GraphID, int] | None = None, output_delta_times: dict[GraphID, int] | None = None)¶
Bases:
ListScheduler