qiskit-experiments
qiskit-experiments copied to clipboard
2 Qubit Pulse Backend
Summary
Further to #925, in this PR, we add a 2-qubit pulse backed for parallel experiments and multi-qubit gates. This PR is part of the Qiskit Advocate Mentorship Program (QAMP-Fall22).
Details and comments
Co-Authors: JeongWon Kim @bicycle315 Daniel Egger @eggerdj
- [x] 2 qubit parallel backend (decoupled)
- [ ] 2 qubit backend with multi-qubit gates
- [ ] Corresponding tests
For your information, you can follow this Qiskit Dynamics tutorial for Simulating backends at the pulse-level with DynamicsBackend. Because several extra arguments are needed to build the Solver
instance for a two qubit device, it's much cleaner to allow PulseBackend
to take a solver instance in its constructor, rather than adding more arguments. This will also make the PulseBackend
robust to future API change of dynamics Solver
instance.
Thank you for your review @nkanazawa1989. I'll go through them and make changes accordingly.
As for using DynamicsBackend
, there was an initial meeting with the qiskit-dynamics
team and at that point, we had concluded that it was better to have these as independent efforts, primarily to keep things simple and efficient for the tests rather than having something more general.
That said, I will check if it is now possible to incorporate DynamicsBackend
in PulseBackend
without disrupting too much.
Yeah I know the PulseBackend
implements different approach for circuit simulation, so I don't suggest replacing it with Dynamics Backend (though we can make it a subclass of dynamics and just override the run method to reuse rest of some nice features). The dynamics tutorial is about setup of Solver
instance.
Thanks @rbuckland for implementing two qubit backend. This is necessary for unittest of future two qubit PRs. I think current PulseBackend is not capable of implementing two qubit architecture, and you need a major refactoring of its constructor. Please check my review comments below.
:-) that puzzled me - was not I that created the PR. I can see that the correct author, @rupeshknn has picked up review.
@rbuckland Oh, sorry about bothering you, and thanks for the message. I updated my review comment.