Closed andrea-pasquale closed 1 month ago
I think it is expected
https://github.com/qiboteam/qibolab/blob/a514441f7c020b190c7871df90d6892392d0b4da/src/qibolab/backends.py#L47-L49
( the default value of self.transpiler
is None
), so the circuit by default is not translated into native gates.
Maybe we could have something different as default transpiler, for example one with only an unroller, for sure the documentation should be updated.
Yes, since we moved the transpiler to Qibo, the circuits are already expected to be expressed as native gates in Qibolab, and they are just compiled to pulses.
I believe we already discussed, and for sure it should be documented (@stavros11, is there anything written anywhere?), but the idea is to avoid anything that is not strictly related to pulses, since it would duplicate a Qibo function (and circuits should be fully handled by Qibo, since you could reuse these features even outside Qibolab).
Yes, since we moved the transpiler to Qibo, the circuits are already expected to be expressed as native gates in Qibolab, and they are just compiled to pulses.
I understand, however it will be useful for qibocal to have a DummyBackend
with a basic transpiler. Of course since qibocal mainly relies on the dummy platform it would be convenient to have this feature directly on the dummy platform.
That could be created that in Qibocal, by depending on Qibo as well. Or even in a qibolab_platforms_qrc
-like package (eventually it could go together the emulator backends).
The following code:
generates the error
KeyError: "Compiler rule not available for <class 'qibo.gates.gates.X'>."
Is this expected? I was testing some protocols in qibocal and I found the bug.