measurement_parallelization#
Full path: iqm.qrisp_iqm.passes.measurement_parallelization
Measurement Parallelization Pass.
This module provides a transpilation pass that combines consecutive measurement operations into a single multi-qubit measurement. This optimization is more efficient on IQM hardware because:
Multiple single-qubit measurements can be performed simultaneously
Reduces the overhead of multiple measurement calls
The hardware can execute parallel readout on all specified qubits at once
The pass scans through the circuit and collects consecutive measurement instructions. When a non-measurement instruction is encountered (or at the end of the circuit), all collected measurements are flushed as a single combined multi-qubit measurement operation.
Example:
>>> from qrisp import QuantumCircuit
>>> from iqm.qrisp_iqm import measurement_parallelization
>>>
>>> qc = QuantumCircuit(3)
>>> qc.h(0)
>>> qc.measure([0, 1, 2]) # Three separate measurements
>>>
>>> # After parallelization, measurements become one multi-qubit operation
>>> qc_optimized = measurement_parallelization(qc)