-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make Optimize1qGatesSimpleCommuation
and Optimize1qGatesDecomposition
passes Target
aware
#7990
Conversation
…ring-2022-Transpiler-Hackathon/qiskit-terra into MakeOpt1qCommTargetAware
Thank you for opening a new pull request. Before your PR can be merged it will first need to pass continuous integration tests and be reviewed. Sometimes the review process can be slow, so please be patient. While you're waiting, please feel free to review other open PRs. While only a subset of people are authorized to approve pull requests for merging, everyone is encouraged to review open pull requests. Doing reviews helps reduce the burden on the core team and helps make the project's code better for everyone. One or more of the the following people are requested to review this:
|
Pull Request Test Coverage Report for Build 2232867480
💛 - Coveralls |
Thanks for opening this, I apologize that it sat for so long without review. I know we talked about this PR offline together and discussed some changes to be made but I never circled back to check on the status, which is my bad. In the meantime another PR implementing the same thing was recently opened in #8917 and I think is taking a better approach for making these passes target aware, including factoring in the error rates as the selection heuristic. So I'm going to close this PR as I feel it's been superseded by #8917 now. But, please feel free to re-open this if you disagree or I'm missing something and we can continue to discuss it. |
Summary
Make
Optimize1qGatesSimpleCommuation
(O1QC) andOptimize1qGatesDecomposition
(O1QD) passesTarget
aware, in continuation of #7113Details and comments
target
as a parameterOptimize1qGatesSimpleCommuation
Optimize1qGatesDecomposition
target.operation_names
instead of thebasis_set
. This is beacuse if target was provided, then decomposition was required for the operations supported by it._substitution_checks
, gates were checked for whether they were supported bytarget
or not astarget
support should supersede thebasis_set
run
method, again check for the optimization ofu3
gate was changed. It included check for whether the qubit on whichu3
was being performed, whether it was supported bytarget
or not. If it was, then relevant optimization was done including some additional checks foru1
andu2
gates.Note
target
introduction. Would love to know if this was somewhat correct or not!