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

Fix performance regression from QuantumError.to_dict #1408

Merged
merged 5 commits into from
Dec 16, 2021

Conversation

chriseclectic
Copy link
Member

@chriseclectic chriseclectic commented Dec 15, 2021

Summary

Fixes #1407 #1398

Fixes issue with QuantumError.to_dict causing a huge performance regression in noisy simulations from its calling of qiskit.assemble inside Pybind11 code.

Details and comments

This also fixed an inefficiency in the C++ controller execute function where the qobj config was deserialized/parsed twice (which doubled the performance regression in #1407)

@chriseclectic chriseclectic added stable-backport-potential The issue or PR might be minimal and/or import enough to backport to stable Changelog: Bugfix Include in the Fixed section of the changelog labels Dec 15, 2021
Fixes issue with QuantumError.to_dict causing a huge performance regression in noisy simulations from its calling of `qiskit.assemble` inside Pybind11 code.
@chriseclectic chriseclectic changed the title Fix performance regression from QuantumError assemble Fix performance regression from QuantumError.to_dict Dec 15, 2021
Copy link
Member

@jakelishman jakelishman left a comment

Choose a reason for hiding this comment

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

I don't think I have the benchmarks you and Hiroshi were using, but this seems fine. I'm not certain I understand how the change to the assemble call helps fix any regression though - perhaps a comment in that file might help.

test/terra/noise/test_quantum_error.py Outdated Show resolved Hide resolved
test/terra/reference/ref_kraus_noise.py Show resolved Hide resolved
src/controllers/aer_controller.hpp Show resolved Hide resolved
src/controllers/aer_controller.hpp Show resolved Hide resolved
src/controllers/aer_controller.hpp Show resolved Hide resolved
@chriseclectic chriseclectic merged commit a1aaac4 into Qiskit:main Dec 16, 2021
chriseclectic added a commit to chriseclectic/qiskit-aer that referenced this pull request Dec 16, 2021
Fixes issue with QuantumError.to_dict causing a huge performance regression in noisy simulations from its calling of `qiskit.assemble` inside Pybind11 code, which resulted in unintended nested python multiprocessing processes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changelog: Bugfix Include in the Fixed section of the changelog stable-backport-potential The issue or PR might be minimal and/or import enough to backport to stable
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Performance regression in noise model loading for Qiskit Aer 0.10.0
2 participants