Skip to content
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

Follow up on #12327: circuit construction in Rust #12605

Merged
merged 4 commits into from
Jun 24, 2024

Conversation

Cryoris
Copy link
Contributor

@Cryoris Cryoris commented Jun 19, 2024

Summary

#12327 ported the utility functions for synth_permutation_basic to Rust, but not the circuit construction which, at the time, wasn't possible. Now that we can construct circuits in Rust directly, this PR follows up by doing exactly that (and also adds a reno).

also port circuit construction to rust and add a reno
@Cryoris Cryoris requested review from alexanderivrii, ShellyGarion and a team as code owners June 19, 2024 12:36
@qiskit-bot
Copy link
Collaborator

One or more of the following people are relevant to this code:

  • @Qiskit/terra-core
  • @kevinhartman
  • @mtreinish

@Cryoris Cryoris added performance synthesis Rust This PR or issue is related to Rust code in the repository labels Jun 19, 2024
crates/accelerate/src/permutation.rs Outdated Show resolved Hide resolved
crates/accelerate/src/permutation.rs Outdated Show resolved Hide resolved
@coveralls
Copy link

coveralls commented Jun 19, 2024

Pull Request Test Coverage Report for Build 9582110172

Details

  • 20 of 20 (100.0%) changed or added relevant lines in 2 files are covered.
  • 29 unchanged lines in 2 files lost coverage.
  • Overall coverage decreased (-0.03%) to 89.743%

Files with Coverage Reduction New Missed Lines %
crates/qasm2/src/lex.rs 5 92.88%
crates/qasm2/src/parse.rs 24 96.23%
Totals Coverage Status
Change from base Build 9578841868: -0.03%
Covered Lines: 63570
Relevant Lines: 70836

💛 - Coveralls

@coveralls
Copy link

coveralls commented Jun 20, 2024

Pull Request Test Coverage Report for Build 9592874352

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 24 of 24 (100.0%) changed or added relevant lines in 3 files are covered.
  • 4 unchanged lines in 1 file lost coverage.
  • Overall coverage increased (+0.003%) to 89.772%

Files with Coverage Reduction New Missed Lines %
crates/qasm2/src/lex.rs 4 92.37%
Totals Coverage Status
Change from base Build 9578841868: 0.003%
Covered Lines: 63584
Relevant Lines: 70828

💛 - Coveralls

@ShellyGarion ShellyGarion added this to the 1.2.0 milestone Jun 20, 2024
@Cryoris
Copy link
Contributor Author

Cryoris commented Jun 21, 2024

I've also added the module structure in bb03417 as discussed with @ShellyGarion, so after this merged we can follow it in the other open PRs 🙂

@coveralls
Copy link

coveralls commented Jun 21, 2024

Pull Request Test Coverage Report for Build 9610157167

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 53 of 54 (98.15%) changed or added relevant lines in 8 files are covered.
  • 59 unchanged lines in 4 files lost coverage.
  • Overall coverage decreased (-0.02%) to 89.746%

Changes Missing Coverage Covered Lines Changed/Added Lines %
crates/accelerate/src/synthesis/permutation/mod.rs 34 35 97.14%
Files with Coverage Reduction New Missed Lines %
crates/qasm2/src/lex.rs 2 93.13%
crates/qasm2/src/parse.rs 6 97.61%
qiskit/circuit/quantumcircuit.py 23 95.69%
qiskit/visualization/pulse_v2/device_info.py 28 39.71%
Totals Coverage Status
Change from base Build 9578841868: -0.02%
Covered Lines: 63586
Relevant Lines: 70851

💛 - Coveralls

Copy link
Contributor

@alexanderivrii alexanderivrii left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Special thanks for organizing the synthesis directory structure.

@alexanderivrii alexanderivrii added this pull request to the merge queue Jun 24, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jun 24, 2024
@ShellyGarion ShellyGarion added this pull request to the merge queue Jun 24, 2024
Merged via the queue into Qiskit:main with commit de6c6eb Jun 24, 2024
15 checks passed
@Cryoris Cryoris deleted the rust/permbasic branch July 10, 2024 09:50
@ElePT ElePT added Changelog: New Feature Include in the "Added" section of the changelog and removed Changelog: New Feature Include in the "Added" section of the changelog labels Jul 31, 2024
Procatv pushed a commit to Procatv/qiskit-terra-catherines that referenced this pull request Aug 1, 2024
* Follow up on Qiskit#12327

also port circuit construction to rust and add a reno

* move _get_ordered_swap to Rust only

* drop redundant Ok(expect())

* proper synthesis structure
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance Rust This PR or issue is related to Rust code in the repository synthesis
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants