iqm.pulla.utils_parallelization.parallelize_timeboxes

iqm.pulla.utils_parallelization.parallelize_timeboxes#

iqm.pulla.utils_parallelization.parallelize_timeboxes(group_circuit_function)#

Generate a full circuit function from a group-wise circuit function.

The group-wise function is applied to every parallel group within every parallelly runnable partition of the QPU (color) such that the subcircuits of each parallel group are scheduled with ALAP logic.

Parameters:

group_circuit_function (Callable[[...], TimeBox]) – The group-wise sub circuit function that acts on a single parallelly runnable group. The function should have the args group (of type tuple[str, ...]), containing the names of the components in the parallel group, and the schedule builder, builder (of type ScheduleBuilder). In addition, it can have any number of additional arguments, which will become circuit parameters.

Returns:

The full circuit generation function.

Return type:

Callable[[…], TimeBox | list[TimeBox]]