-
Notifications
You must be signed in to change notification settings - Fork 73
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
A* swap search takes "forever" when compiling some benchmarking files #531
Comments
|
Weird. Where is the |
This compiling the |
Going to let it run for a bit over lunch while logging to a file. Logging to stdout slows things to a crawl, so maybe it will get itself unstuck and/or get stuck somewhere else... will report back later. |
Let it run for 10 minutes, and the tail end of the logs look identical to the snippet I posted above. |
Appears to only be an issue for the fidelity addresser. Temporal addresser still runs in about the same time as before the fidelity changes. (let ((quil::*addresser-swap-search-type* :a*)
(quil::*default-addresser-state-class* 'quil::temporal-addresser-state))
(time (quil::compiler-hook (quil::read-quil-file #P"/Users/mappleby/src/repos/rigetti/quilc/benchmarking/quil-rewiring/0005q-0000160.quil")
(quil::build-nQ-linear-chip 20))))
Evaluation took:
1.651 seconds of real time |
Managed to scrounge it down to a smaller repro case. The following 13-line prefix of
|
Slightly simpler example consisting of only
|
Shelving this for now to work on something else. Parting note to self. Here is a snippet from the logs when compiling the example here with a 20q linear chip:
Why is |
Perhaps this is the same logical / physical discrepancy that Mark is presently working on. |
I was hoping that might be the case. Was planning to take a closer look and take his PR for test drive once the test failures there are resolved. |
Was hoping the fix for #534 might coincidentally resolve this issue as well, but it seems not. |
Compiling the following program takes a racoon's age (maybe infiniloop):
I noticed this while looking into another
CL-QUIL-BENCHMARKING
issue (#346). I'm not certain whether the search is infinite looping or just taking a really long time. Definitely doesn't finish within ~5 mins, whereas compiling with the default:GREEDY-QUBIT
swap search strategy takes ~1.5 seconds.The same issue occurs when compiling other high-gate-depth files under benchmarking/quil-rewiring, like
0008q-0000418-qaoa-8-5.quil
and0020q-0000654-johannes.quil
.Git bisect points to the swap fidelity commit (30882c0). Prior to 30882c0, compiling with
:A*
swap search takes about the same time as:GREEDY-QUBIT
does after:The text was updated successfully, but these errors were encountered: