Skip to content

Minor schedule things

  • Move all outputs as early as possible: min(schedule.backward_slack(gid) for gid in schedule._sfg.get_used_graph_ids() if o.startswith("out")) will give the time that all outputs can be moved back. (Can be a better way to get these graph-ids.
  • When erroring about too short scheduling time, give the (theoretical) minimum time in the error message.
  • Much whitespace for "high" figures (I can fix that)
  • I still think some sort of log would be nice. https://docs.python.org/3/library/logging.html (one can use debug level to log every operation scheduled etc).
  • It seems like outputs can not always be positioned during cyclic scheduling:
ValueError: Cannot schedule outputs according to the provided output_delta_times. Failed output: out0, at time: 200, try relaxing the constraints.

That seems unlikely and a bug/area of improvement. Edit: my point here is that it should always be possible to add the outputs at the end when doing cyclic schedling. Also, at least one output_delta_time should be zero to have a reference.

Edited by Simon Bjurek