Why do we need to pack the circuit on the device's side?
The idea is to let the vendors modify the QIR as needed? QLM's appliance, for example, always introduces measurements at the end. Should their QDMI backend remove the measurement from the QIR? I cannot think of a better reason for this. But I think we should always pack on our side to reduce latency.
Should we also add a routine to ask the backend which packing routine shall we call? I.e., do they support QIR or qasm?
Or should we use the QDMI_query_device_property_ family?
Why do we need to pack the circuit on the device's side?
The idea is to let the vendors modify the QIR as needed? QLM's appliance, for example, always introduces measurements at the end. Should their QDMI backend remove the measurement from the QIR? I cannot think of a better reason for this. But I think we should always pack on our side to reduce latency.
https://github.com/Munich-Quantum-Software-Stack/QDMI/blob/4d4d0dc7c8331f0b2dc43119f2da0a53d2a5c203/include/qdmi_internal.h#L53