From f61f8925bf3d56bd48ad2a177b1aa70daa747e42 Mon Sep 17 00:00:00 2001 From: Jakob-Waibel Date: Fri, 11 Jul 2025 11:49:52 +0200 Subject: [PATCH 1/4] feat: Use stack-based implementation instead of recursion --- README.md | 47 +---------- assets/img/2_layers_n10_16_swaps.png | Bin 0 -> 241643 bytes config.yaml | 4 +- rust/src/routing/multi_sabre.rs | 119 ++++++++++++++------------- src/microscope/commands/olsq.py | 6 +- 5 files changed, 66 insertions(+), 110 deletions(-) create mode 100644 assets/img/2_layers_n10_16_swaps.png diff --git a/README.md b/README.md index 34bd7fd..7b3d3c0 100644 --- a/README.md +++ b/README.md @@ -92,61 +92,18 @@ considering a node multiple times. ## Ideas -- [ ] Track number of dag nodes -- [ ] Track extended set range for circuits - - With a given limit of items in the extended set (e.g. 20), with small - circuits, we don't actually leverage the full set. However, it is - interesting to see that if we fill it up for every size (e.g. 930 qubits - sample), then the best result is still at a fairly small lookahead (30 in - that case). This indicates, that accounting for too many gates has - diminishing returns. - - When running the 930 qubit circuit with no limit on items in the - extended set, it contains ~1600 items per iteration. However, this - does not improve resuts. Now, the question is if we introduce a decay - in the heuristic (based on critical path), can we get it to scale - linearly -- [ ] Track avg elements in extended set -- [ ] Which elements to choose for the extended set might be relvant depending - on which heuristic to choose - [ ] How can we move that optimal point? Is it related to the weight we give the extended set? - -- [ ] Finding optimal parameters probably requires categorizing the circuits -- [ ] Understand what elements are populated into the current extended set and - the implications - - It might not make sense to implement critical path on the current - extended set if it only accounts for nodes that can be executed - immediately afterwards -- [ ] The inherent randomness in the SABRE algorithm can lead to one approach - seeming better than another one. -- [ ] What actually happens, why do we always contain the same number of gates in - the extended set? - - Understand the extended set - - Implement a critical path / decay heuristic -- [ ] Why is there still a dip? - - Understand what items are in the extended set and whether critical path can - be applied to that? -- [ ] The extended set actually just contains all gates, that are routable assuming - the front can be executed. If I am not mistaken, accounting for the number of - gates in the extended set might be interesting. Also, what happens when we - create another front at the end of the extended set? - - Does the heuristic account for that and give more elements in the - extended set a benefit? - [ ] I don't want the algorithm to get stuck _ever_ cause it feels like the heuristic failed me in that case -- [ ] Layered approach, take the extended set of the extended set with a weight of 0.25 etc. - - How does randomness behave here? - - Is it more random than the normal lookahead? -- [ ] Decompose heuristics into separate module, since that will most likely stay the same - [ ] Comments, Naming, Types - [ ] Not getting stuck would also be a major improvement (liveness) - [ ] Is there still a use for the lookahead heuristic or can we focus on local changes in that case? - [ ] Results seem to always be divisible by the number of swaps at a time (tested on 10 qubits and 930)? -- [ ] We seem to not get stuck when using the SABRELayout stage, but we also don't seem to get an improvement anywhere? - - Also the results do not seem random anymore - Before investigating the layout, take a look at the heuristic first - [ ] Properly understand the SABRELayout and what it means to have a reversible circuit -- [ ] Heuristik ist egal, irgendwas ist total falsch - [ ] What if we used another coupling-map (like grid) +- [ ] Zu viele SWAPs sind auch wieder schlecht, weil dann auf die 6 SWAPs optimiert wird, die eventuell ein bisschen falsch abbiegen +- [ ] Only consider value after all the n swaps ## diff --git a/assets/img/2_layers_n10_16_swaps.png b/assets/img/2_layers_n10_16_swaps.png new file mode 100644 index 0000000000000000000000000000000000000000..73e781f5ae7f4ecc916ddfe28a9b3fc7c83a2d33 GIT binary patch literal 241643 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 ( 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, -// score: f64, -// depth: usize, -// state: StateSnapshot, -// } - -// #[derive(Debug, Clone)] -// struct StateSnapshot { -// front_layer: MicroFront, -// required_predecessors: Vec, -// running_mapping: MicroLayout, -// gate_order: Vec, -// } - #[derive(Clone)] -struct MapperState { +struct RoutingState { front_layer: MicroFront, required_predecessors: Vec, running_mapping: MicroLayout, gate_order: Vec, } +#[derive(Clone)] +struct StackState { + mapper_state: RoutingState, + current_sequence: Vec<[i32; 2]>, + current_score: f64, + layer: usize +} + impl MultiSABRE { - fn save_state(&self) -> MapperState { - MapperState { + fn save_state(&self) -> RoutingState { + RoutingState { front_layer: self.front_layer.clone(), required_predecessors: self.required_predecessors.clone(), running_mapping: self.running_mapping.clone(), @@ -191,64 +183,73 @@ impl MultiSABRE { } } - fn load_state(&mut self, state: MapperState) { + fn apply_state(&mut self, state: RoutingState) { self.front_layer = state.front_layer; self.required_predecessors = state.required_predecessors; self.running_mapping = state.running_mapping; self.gate_order = state.gate_order; } - fn choose_best_swaps(&mut self, n: usize) -> Vec<[i32; 2]> { + fn choose_best_swaps(&mut self, layers: usize) -> Vec<[i32; 2]> { + let start_state = self.save_state(); + + let mut stack = Vec::new(); let mut scores: FxHashMap, f64> = FxHashMap::default(); - let initial_state = self.save_state(); + stack.push(StackState { + mapper_state: self.save_state(), + current_sequence: Vec::new(), + current_score: 0.0, + layer: layers + }); + + while let Some(state) = stack.pop() { + if state.layer == 0 { + scores.insert(state.current_sequence.clone(), state.current_score); + continue + } - self.recursive_swap_search(&mut vec![], n, 0.0, &mut scores); + let initial_state = state.mapper_state.clone(); + + let swap_candidates = self.compute_swap_candidates(); - self.load_state(initial_state); + for &[q0, q1] in &swap_candidates { + self.apply_state(initial_state.clone()); - min_score(scores) - } + let before = self.calculate_heuristic(); + self.apply_swap([q0, q1]); + let after = self.calculate_heuristic(); + let diff = after - before; - fn recursive_swap_search( - &mut self, - current_sequence: &mut Vec<[i32; 2]>, - depth: usize, - current_score: f64, - scores: &mut FxHashMap, f64>, - ) { - if depth == 0 { - scores.insert(current_sequence.clone(), current_score); - return; - } + let mut execute_gate_list = Vec::new(); + if let Some(node) = self.executable_node_on_qubit(q0) { + execute_gate_list.push(node); + self.front_layer.remove(&node); + } + if let Some(node) = self.executable_node_on_qubit(q1) { + execute_gate_list.push(node); + self.front_layer.remove(&node); + } - let swap_candidates = self.compute_swap_candidates(); - let saved_state = self.save_state(); + self.advance_front_layer(&execute_gate_list); - for &[q0, q1] in &swap_candidates { - let before = self.calculate_heuristic(); - self.apply_swap([q0, q1]); - let after = self.calculate_heuristic(); - let diff = after - before; + let mut new_sequence = state.current_sequence.clone(); + new_sequence.push([q0, q1]); - let mut execute_gate_list = Vec::new(); - if let Some(node) = self.executable_node_on_qubit(q0) { - execute_gate_list.push(node); - self.front_layer.remove(&node); - } - if let Some(node) = self.executable_node_on_qubit(q1) { - execute_gate_list.push(node); - self.front_layer.remove(&node); + stack.push( + StackState { + mapper_state: self.save_state(), + current_sequence: new_sequence, + current_score: state.current_score + diff, + layer: state.layer - 1 + } + ) } + } - self.advance_front_layer(&execute_gate_list); - - current_sequence.push([q0, q1]); - self.recursive_swap_search(current_sequence, depth - 1, current_score + diff, scores); - current_sequence.pop(); + self.apply_state(start_state); - self.load_state(saved_state.clone()); // Restore state before trying next swap - } + min_score(scores) } fn compute_swap_candidates(&self) -> Vec<[i32; 2]> { diff --git a/src/microscope/commands/olsq.py b/src/microscope/commands/olsq.py index 7e9b208..c402320 100644 --- a/src/microscope/commands/olsq.py +++ b/src/microscope/commands/olsq.py @@ -38,10 +38,8 @@ def olsq(config): pm = PassManager( [ Unroll3qOrMore(), - # SetLayout(preprocessing_layout), - # FullAncillaAllocation(coupling_map), - # ApplyLayout(), - SabreLayout(coupling_map, layout_trials=10, seed=42), + SabreLayout(coupling_map, skip_routing=True), + ApplyLayout(), RemoveBarriers(), ] ) From 512e1760562bd5f803334fa2c6545ae6bd9f98c9 Mon Sep 17 00:00:00 2001 From: Jakob-Waibel Date: Tue, 15 Jul 2025 14:08:48 +0200 Subject: [PATCH 2/4] fix: Improve robustness --- config.yaml | 4 +-- rust/src/routing/multi_sabre.rs | 23 ++++++++++------- src/microscope/commands/ocular.py | 43 ++++++++++++++++++------------- src/microscope/commands/qiskit.py | 4 +-- 4 files changed, 42 insertions(+), 32 deletions(-) diff --git a/config.yaml b/config.yaml index 0c3a714..8964fb3 100644 --- a/config.yaml +++ b/config.yaml @@ -1,11 +1,11 @@ ocular: # path: examples/adder_n28.qasm - path: examples/adder_n64.qasm + # path: examples/adder_n64.qasm # path: examples/adder_n10.qasm # path: examples/adder_n4.qasm # path: /home/jakob/Documents/hamiltonians/ham_heis_graph_2D_grid_nonpbc_qubitnodes_Lx_5_Ly_186_h_0_5.qasm # path: /home/jakob/Documents/hamiltonians/ham_heis_graph_2D_grid_pbc_qubitnodes_Lx_5_Ly_186_h_3.qasm - # path: /home/jakob/Documents/hamiltonians/ham_BH_D_1_d_4_bh_graph_1D_grid_nonpbc_qubitnodes_Lx_12_U_40_enc_unary_d_4.qasm + path: /home/jakob/Documents/hamiltonians/ham_BH_D_1_d_4_bh_graph_1D_grid_nonpbc_qubitnodes_Lx_12_U_40_enc_unary_d_4.qasm trials: 1 heuristics: # - "basic" diff --git a/rust/src/routing/multi_sabre.rs b/rust/src/routing/multi_sabre.rs index f57b092..387eee8 100644 --- a/rust/src/routing/multi_sabre.rs +++ b/rust/src/routing/multi_sabre.rs @@ -80,7 +80,7 @@ impl MultiSABRE { while !self.front_layer.is_empty() { let mut current_swaps: Vec<[i32; 2]> = Vec::new(); - println!("Are we even in here?"); + // println!("Are we even in here?"); // while execute_gate_list.is_empty() && current_swaps.len() < self.num_qubits as usize * 10 { while execute_gate_list.is_empty() { if current_swaps.len() > 10 * self.num_qubits as usize { @@ -90,7 +90,7 @@ impl MultiSABRE { let swaps = self.choose_best_swaps(layers as usize); // We apparently never get here - println!("Chose swaps: {:?}", swaps); + // println!("Chose swaps: {:?}", swaps); for swap in swaps { let q0 = swap[0]; @@ -213,6 +213,11 @@ impl MultiSABRE { let swap_candidates = self.compute_swap_candidates(); + if swap_candidates.is_empty() { + scores.insert(state.current_sequence.clone(), state.current_score); + continue + } + for &[q0, q1] in &swap_candidates { self.apply_state(initial_state.clone()); @@ -492,17 +497,15 @@ impl MultiSABRE { fn min_score(scores: FxHashMap, f64>) -> Vec<[i32; 2]> { let mut best_swap_sequences = Vec::new(); + // println!("Scores length: {:?}", scores.len()); let mut iter = scores.iter(); - let (min_swap_sequence, mut min_score) = iter - .next() - .map(|(swap_sequence, &score)| (swap_sequence, score)) - .unwrap(); + let (min_swap_sequence, mut min_score) = iter.next().unwrap(); best_swap_sequences.push(min_swap_sequence); // TODO: Consider introducing an epsilon threshold here - for (swap_sequence, &score) in iter { + for (swap_sequence, score) in iter { if score < min_score { min_score = score; best_swap_sequences.clear(); @@ -514,9 +517,9 @@ fn min_score(scores: FxHashMap, f64>) -> Vec<[i32; 2]> { let mut rng = rng(); - if best_swap_sequences.len() > 1 { - println!("Actually making a random choice"); - } + // if best_swap_sequences.len() > 1 { + // println!("Actually making a random choice"); + // } best_swap_sequences.choose(&mut rng).unwrap().to_vec() } diff --git a/src/microscope/commands/ocular.py b/src/microscope/commands/ocular.py index f5c595a..3f1f009 100644 --- a/src/microscope/commands/ocular.py +++ b/src/microscope/commands/ocular.py @@ -67,8 +67,15 @@ def ocular(config): num_qubits = input_circuit.num_qubits # Generate coupling map - coupling_map = CouplingMap.from_line(input_circuit.num_qubits) + # coupling_map = CouplingMap.from_line(input_circuit.num_qubits) + import math + n = input_circuit.num_qubits + rows = math.isqrt(n) + cols = math.ceil(n / rows) + + # Now create the grid-based coupling map + coupling_map = CouplingMap.from_grid(rows, cols) pm = PassManager( [ Unroll3qOrMore(), @@ -165,7 +172,7 @@ def ocular(config): # Run single SABRE execution # sabre_result = rust_ms.run(heuristic, extended_set_size) - sabre_result = rust_multi.run(2) + sabre_result = rust_multi.run(1) ( out_map, @@ -189,7 +196,7 @@ def ocular(config): transpiled_sabre_circuit_boosted = dag_to_circuit(transpiled_sabre_dag_boosted) # Print resulting circuit - transpiled_sabre_circuit_boosted.draw("mpl", fold=-1) + # transpiled_sabre_circuit_boosted.draw("mpl", fold=-1) # plt.show() # Initialize PassManager to check correctness of result @@ -275,23 +282,23 @@ def process_results(test_results): result_table(rows, columns) # Plot result - _, ax = plt.subplots() + # _, ax = plt.subplots() - for heuristic, axis_data in data.items(): - extended_set_size = axis_data[0] - swaps = axis_data[1] + # for heuristic, axis_data in data.items(): + # extended_set_size = axis_data[0] + # swaps = axis_data[1] - ax.plot(extended_set_size, swaps, label=f"{heuristic}") + # ax.plot(extended_set_size, swaps, label=f"{heuristic}") - ax.legend() + # ax.legend() - ax.set( - xlabel="Extended-Set Size", - ylabel="Swaps", - title="Extended-Set Size Scaling", - xlim=(0, 8), - xticks=range(0, 101, 10), - ) - ax.grid() + # ax.set( + # xlabel="Extended-Set Size", + # ylabel="Swaps", + # title="Extended-Set Size Scaling", + # xlim=(0, 8), + # xticks=range(0, 101, 10), + # ) + # ax.grid() - plt.xlim((0, 100)) + # plt.xlim((0, 100)) diff --git a/src/microscope/commands/qiskit.py b/src/microscope/commands/qiskit.py index f9e2c24..feac20e 100644 --- a/src/microscope/commands/qiskit.py +++ b/src/microscope/commands/qiskit.py @@ -46,7 +46,7 @@ def qiskit(config): Unroll3qOrMore(), SabreLayout(coupling_map, skip_routing=True), ApplyLayout(), - # FullAncillaAllocation(coupling_map), + FullAncillaAllocation(coupling_map), RemoveBarriers(), ] ) @@ -61,7 +61,7 @@ def qiskit(config): ) transpiled_qc = qiskit_pm.run(preprocessed_circuit) - transpiled_qc.draw("mpl", fold=-1) + # transpiled_qc.draw("mpl", fold=-1) transpiled_qc_dag = circuit_to_dag(transpiled_qc) if not cm.property_set.get("is_swap_mapped"): From b4c51a3856600079a5565e00e441049724f9cc2b Mon Sep 17 00:00:00 2001 From: Jakob-Waibel Date: Tue, 15 Jul 2025 14:14:33 +0200 Subject: [PATCH 3/4] feat: Switch to line and improved configuration --- config.yaml | 4 ++-- src/microscope/commands/ocular.py | 16 ++++++++-------- src/microscope/commands/qiskit.py | 7 +++++++ 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/config.yaml b/config.yaml index 8964fb3..0c3a714 100644 --- a/config.yaml +++ b/config.yaml @@ -1,11 +1,11 @@ ocular: # path: examples/adder_n28.qasm - # path: examples/adder_n64.qasm + path: examples/adder_n64.qasm # path: examples/adder_n10.qasm # path: examples/adder_n4.qasm # path: /home/jakob/Documents/hamiltonians/ham_heis_graph_2D_grid_nonpbc_qubitnodes_Lx_5_Ly_186_h_0_5.qasm # path: /home/jakob/Documents/hamiltonians/ham_heis_graph_2D_grid_pbc_qubitnodes_Lx_5_Ly_186_h_3.qasm - path: /home/jakob/Documents/hamiltonians/ham_BH_D_1_d_4_bh_graph_1D_grid_nonpbc_qubitnodes_Lx_12_U_40_enc_unary_d_4.qasm + # path: /home/jakob/Documents/hamiltonians/ham_BH_D_1_d_4_bh_graph_1D_grid_nonpbc_qubitnodes_Lx_12_U_40_enc_unary_d_4.qasm trials: 1 heuristics: # - "basic" diff --git a/src/microscope/commands/ocular.py b/src/microscope/commands/ocular.py index 3f1f009..ee786a6 100644 --- a/src/microscope/commands/ocular.py +++ b/src/microscope/commands/ocular.py @@ -67,15 +67,15 @@ def ocular(config): num_qubits = input_circuit.num_qubits # Generate coupling map - # coupling_map = CouplingMap.from_line(input_circuit.num_qubits) + coupling_map = CouplingMap.from_line(input_circuit.num_qubits) - import math - n = input_circuit.num_qubits - rows = math.isqrt(n) - cols = math.ceil(n / rows) + # import math + # n = input_circuit.num_qubits + # rows = math.isqrt(n) + # cols = math.ceil(n / rows) - # Now create the grid-based coupling map - coupling_map = CouplingMap.from_grid(rows, cols) + # # Now create the grid-based coupling map + # coupling_map = CouplingMap.from_grid(rows, cols) pm = PassManager( [ Unroll3qOrMore(), @@ -172,7 +172,7 @@ def ocular(config): # Run single SABRE execution # sabre_result = rust_ms.run(heuristic, extended_set_size) - sabre_result = rust_multi.run(1) + sabre_result = rust_multi.run(2) ( out_map, diff --git a/src/microscope/commands/qiskit.py b/src/microscope/commands/qiskit.py index feac20e..0469779 100644 --- a/src/microscope/commands/qiskit.py +++ b/src/microscope/commands/qiskit.py @@ -34,6 +34,13 @@ def qiskit(config): # Generate coupling map coupling_map = CouplingMap.from_line(input_circuit.num_qubits) + # import math + # n = input_circuit.num_qubits + # rows = math.isqrt(n) + # cols = math.ceil(n / rows) + + # # Now create the grid-based coupling map + # coupling_map = CouplingMap.from_grid(rows, cols) # Generate DAG from circuit input_dag = circuit_to_dag(input_circuit) From 6159efd60b252f8a2b54d373fce438b2060b70f7 Mon Sep 17 00:00:00 2001 From: Jakob-Waibel Date: Tue, 15 Jul 2025 14:29:38 +0200 Subject: [PATCH 4/4] feat: Add shortened circuits --- config.yaml | 3 ++- examples/adder_n10_medium.qasm | 36 +++++++++++++++++++++++++++++++ examples/adder_n10_shortened.qasm | 34 +++++++++++++++++++++++++++++ 3 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 examples/adder_n10_medium.qasm create mode 100644 examples/adder_n10_shortened.qasm diff --git a/config.yaml b/config.yaml index 0c3a714..9513b4d 100644 --- a/config.yaml +++ b/config.yaml @@ -1,7 +1,8 @@ ocular: # path: examples/adder_n28.qasm - path: examples/adder_n64.qasm + # path: examples/adder_n64.qasm # path: examples/adder_n10.qasm + path: examples/adder_n10_shortened.qasm # path: examples/adder_n4.qasm # path: /home/jakob/Documents/hamiltonians/ham_heis_graph_2D_grid_nonpbc_qubitnodes_Lx_5_Ly_186_h_0_5.qasm # path: /home/jakob/Documents/hamiltonians/ham_heis_graph_2D_grid_pbc_qubitnodes_Lx_5_Ly_186_h_3.qasm diff --git a/examples/adder_n10_medium.qasm b/examples/adder_n10_medium.qasm new file mode 100644 index 0000000..fc2496a --- /dev/null +++ b/examples/adder_n10_medium.qasm @@ -0,0 +1,36 @@ +// quantum ripple-carry adder from Cuccaro et al, quant-ph/0410184 +OPENQASM 2.0; +include "qelib1.inc"; +gate majority a,b,c +{ + cx c,b; + cx c,a; + ccx a,b,c; +} +gate unmaj a,b,c +{ + ccx a,b,c; + cx c,a; + cx a,b; +} +qreg cin[1]; +qreg a[4]; +qreg b[4]; +qreg cout[1]; +creg ans[5]; +// set input states +x a[0]; // a = 0001 +x b; // b = 1111 +// add a to b, storing result in b +majority cin[0],b[0],a[0]; +majority a[0],b[1],a[1]; +majority a[1],b[2],a[2]; +cx a[3],cout[0]; +unmaj a[2],b[3],a[3]; +unmaj a[1],b[2],a[2]; +unmaj a[0],b[1],a[1]; +measure b[0] -> ans[0]; +measure b[1] -> ans[1]; +measure b[2] -> ans[2]; +measure b[3] -> ans[3]; +measure cout[0] -> ans[4]; \ No newline at end of file diff --git a/examples/adder_n10_shortened.qasm b/examples/adder_n10_shortened.qasm new file mode 100644 index 0000000..3538b21 --- /dev/null +++ b/examples/adder_n10_shortened.qasm @@ -0,0 +1,34 @@ +// quantum ripple-carry adder from Cuccaro et al, quant-ph/0410184 +OPENQASM 2.0; +include "qelib1.inc"; +gate majority a,b,c +{ + cx c,b; + cx c,a; + ccx a,b,c; +} +gate unmaj a,b,c +{ + ccx a,b,c; + cx c,a; + cx a,b; +} +qreg cin[1]; +qreg a[4]; +qreg b[4]; +qreg cout[1]; +creg ans[5]; +// set input states +x a[0]; // a = 0001 +x b; // b = 1111 +// add a to b, storing result in b +majority cin[0],b[0],a[0]; +majority a[0],b[1],a[1]; +cx a[3],cout[0]; +unmaj a[2],b[3],a[3]; +unmaj a[1],b[2],a[2]; +measure b[0] -> ans[0]; +measure b[1] -> ans[1]; +measure b[2] -> ans[2]; +measure b[3] -> ans[3]; +measure cout[0] -> ans[4]; \ No newline at end of file