-
Notifications
You must be signed in to change notification settings - Fork 13
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
Edge-disjoint paths in the wave pipeline #121
Conversation
…routing using edge-disjoint paths.
…f edge-disjoint paths.
… prep, Bell measure, merge, and split.
… and added tests.
6bb5a82
to
71b7915
Compare
@@ -52,21 +55,25 @@ Options: | |||
-f, --output-format Requires -o, STDOUT output format: progress, noprogress, machine, stats | |||
-t, --timeout Set a timeout in seconds after which stop producing slices | |||
-r, --router Set a router: graph_search (default), graph_search_cached | |||
-P, --pipeline pipeline mode: stream (default), dag, wave | |||
-g, --graph-search Set a graph search provider: djikstra (default), astar, boost (not always available) [ignored by -P wave pipeline, which uses astar] | |||
-P, --pipeline pipeline mode: stream (default), wave, edpc, dag (deprecated) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just curious, why is dag
deprecated now? do edpc
and wave
fully replace it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not know the dag pipeline as well as I do the wave pipeline, but it was my impression that the wave pipeline was an improvement on the dag pipeline in that it constructed the dag in linear time rather than quadratic while effecting the same (or very similar) compilation. What are your thoughts?
Implemented greedy edge-disjoint path compilation (see Beverland et. al., 2022) within the wave pipeline (use -P edpc) for Bell-based CNOT gates. Can be used for 1-lane (-L edpc --numlanes 1) and 1-lane-condensed (-L edpc --numlanes 1 --condensed 1) layouts.
See scaling improvements for random circuits below (compare with Fig. 5 from Section 3 of Realistic Costs...):
slices-vs-num-qubits.pdf
compilation-time-vs-num-qubits.pdf