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

Cirq shows logarithmic complexity on single-gate tasks #47

Open
sergei-mironov opened this issue Dec 13, 2021 · 2 comments
Open

Cirq shows logarithmic complexity on single-gate tasks #47

sergei-mironov opened this issue Dec 13, 2021 · 2 comments
Labels
help wanted Extra attention is needed

Comments

@sergei-mironov
Copy link

Hi. I've run the Benchmark (forked from commit 2492b3a) with some latest Qiskit and Cirq-0.13.1. Multi-gate tests look valid, but on single-gate tasks I see the attached picture. AFAIK the non-exponential performance in Cirq's case means that it uses some "forbidden" optimisation like erasing the unchanged qubits or alike. Does this explanation sound right and how can I find and disable this optimization?

image

@Roger-luo
Copy link
Collaborator

yes, this looks like something has been changed inside Cirq if you get this or it could also because Cirq start to spawn tasks to run in the backend instead of syncing task, this is another benchmark trap one could easily run into when I was trying other platforms (e.g qiskit did this before, so we have to use our custom execute). I'm not sure what has been changed in Cirq however, this would need someone knows Cirq well to understand this better

@Roger-luo Roger-luo added the help wanted Extra attention is needed label Dec 13, 2021
@sergei-mironov
Copy link
Author

OK. I checked htop and it looks like it is not a multi-processing issue, since only one loaded cpu appeared all the time. So, probably, it is some optimizations..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants