scheduler#
Tools for merging instruction schedules in time.
Under the idealized, noiseless, crosstalk-less computational model, the scheduling algorithms
should preserve the effect of the schedules on the computational subspace, i.e.
executing Schedule
A
immediately followed by B
should be equivalent to
executing the merged schedule A+B
.
The merging is always done so that in A+B
all the channels of B
start
their execution simultaneously, and remain in sync. Nothing
instructions can be added
as spacers between the channels of A
and B
as necessary to make this happen.
Typically the scheduling algorithms also try to minimize the total duration of the merged schedule.
Full path: iqm.pulse.scheduler
Module Attributes
Instructions that can be converted to |
|
Nonsolid Instructions that nevertheless block. |
Functions
|
Merge two Schedules together such that the timebox boundary is respected. |
|
The same as |
|
Extend a Schedule with another Schedule. |
|
Extend a Schedule with another Schedule. |
Classes
Tool for working with Segments. |
Inheritance
digraph inheritance1c3542bf1d { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "SegmentPointer" [URL="iqm.pulse.scheduler.SegmentPointer.html#iqm.pulse.scheduler.SegmentPointer",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Tool for working with Segments."]; }