Currently pytket-iqm.IQMBackend.process_circuits takes in multiple circuits, but executes them through an IQMClient one by one. Starting with version 4.0 IQMClient supports batch circuits submission, if certain requirements are met:
every circuit to be run with the same amount of shots
measuring same qubits in every circuit
If circuits not matching those requirements are submitted, IQM backend will return an error.
While this might look like a very limited use-case it is useful for submitting similar circuits for execution as it provides a significant execution performance boost reducing transport and conversion overhead and allows to use quantum computer hardware more efficiently.
We suggest to improve process_circuits by submitting the circuits for execution as a batch if the requirements are met, while keeping one-by-one execution as a fallback.
Currently
pytket-iqm.IQMBackend.process_circuits
takes in multiple circuits, but executes them through anIQMClient
one by one. Starting with version 4.0IQMClient
supports batch circuits submission, if certain requirements are met:If circuits not matching those requirements are submitted, IQM backend will return an error. While this might look like a very limited use-case it is useful for submitting similar circuits for execution as it provides a significant execution performance boost reducing transport and conversion overhead and allows to use quantum computer hardware more efficiently.
We suggest to improve
process_circuits
by submitting the circuits for execution as a batch if the requirements are met, while keeping one-by-one execution as a fallback.