Qiskit / qiskit

Qiskit is an open-source SDK for working with quantum computers at the level of extended quantum circuits, operators, and primitives.
https://www.ibm.com/quantum/qiskit
Apache License 2.0
5.1k stars 2.34k forks source link

Panic in SabreLayout when running on large quantum volume circuit #13081

Closed mtreinish closed 2 weeks ago

mtreinish commented 4 weeks ago

Environment

What is happening?

When running a large quantum volume circuit through the SabreLayout pass the individual trials start to internally panic with the following:

thread '<unnamed>' panicked at 'called `Option::unwrap()` on a `None` value', crates/accelerate/src/sabre/layer.rs:73:52

once for each thread launched. Once all 20 threads panic the pass stops.

How can we reproduce the issue?

from qiskit.circuit.library import QuantumVolume
import qiskit
from qiskit.transpiler import PassManager
from qiskit.transpiler.passes import SabreLayout, Unroll3qOrMore
from qiskit.transpiler import CouplingMap

qv = QuantumVolume(1000, seed=42)
qv.measure_all()
qc = Unroll3qOrMore()(qv)

cmap = CouplingMap.from_heavy_hex(21)
pm = PassManager([
    SabreLayout(cmap, swap_trials=20, layout_trials=20, max_iterations=4),
])

tqc = pm.run(qc)

What should happen?

The pass shouldn't panic, and should successfully apply a layout and route the circuit.

Any suggestions?

This was most likely a regression introduced by: https://github.com/Qiskit/qiskit/pull/11977 as the example works fine with Qiskit 1.0.2.

Cryoris commented 3 weeks ago

I could reproduce this issue but the full Rust backtrace didn't make me any smarter:


``` run_in_parallel: true Starting layout length: 21 thread '' panicked at 'called `Option::unwrap()` on a `None` value', crates/accelerate/src/sabre/layer.rs:73:52 stack backtrace: 0: 0x105b5200c - equator::spec::by_val::CmpByValWrapper>>::__wrap_ref::h5f9348e314a696fe at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/spec/by_val.rs:150:6 1: 0x105b5200c - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:296:9 2: 0x105b5200c - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 3: 0x105b5200c - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 4: 0x105b5200c - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2494:21 5: 0x10574a750 - qiskit_qasm3::loads::hc341bb0ceca848e9 at /Users/jul/Qiskit/qiskit/crates/qasm3/src/lib.rs:95:53 6: 0x105b37a58 - faer::mat::matref::MatRef::ptr_inbounds_at::h15a71cdd4c79bae9 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:206:53 7: 0x105b37a58 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get_unchecked::he64931c5fd7686cb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:472:30 8: 0x105b37a58 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get::hf8a6325640a5e3d4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:479:18 9: 0x105b37a58 - faer::mat::matref::MatRef::get::h20d8cb9d6af2bb53 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:400:9 10: 0x105b37a58 - faer::mat::matref::MatRef::read::h5a532365d2909d54 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:429:13 11: 0x105b37a58 - faer::mat::matmut::MatMut::read::hcf30cd6752cb6258 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:624:9 12: 0x105b37a58 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2448:38 13: 0x105b552e4 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f 14: 0x105b552e4 - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 15: 0x105b552e4 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 16: 0x105b552e4 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2495:21 17: 0x105b54f44 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f 18: 0x105b54f44 - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 19: 0x105b54f44 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 20: 0x105b54f44 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2495:21 21: 0x105b55e40 - equator::spec::by_val::ByVal::get_ptr::hcd560a460879946f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/spec/by_val.rs:52:6 22: 0x105b55e40 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:654:9 23: 0x105b55e40 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2495:21 24: 0x105b559cc - core::num::::overflowing_add::h93fb3e7e8d70ba0a at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/num/int_macros.rs:1533:18 25: 0x105b559cc - faer::utils::unchecked_add::h0bd61a2052ce897d at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/utils/mod.rs:12:27 26: 0x105b559cc - faer::mat::matmut::MatMut::ptr_at_mut_unchecked::h285d64675ce3b40c at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:234:22 27: 0x105b559cc - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:297:9 28: 0x105b559cc - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 29: 0x105b559cc - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 30: 0x105b559cc - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2495:21 31: 0x105b55960 - core::num::::overflowing_mul::h912f9a904ba5b669 at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/num/int_macros.rs:1749:13 32: 0x105b55960 - faer::utils::unchecked_mul::hcb36f4ae86311f68 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/utils/mod.rs:3:27 33: 0x105b55960 - faer::mat::matmut::MatMut::ptr_at_mut_unchecked::h285d64675ce3b40c at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:236:13 34: 0x105b55960 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:297:9 35: 0x105b55960 - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 36: 0x105b55960 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 37: 0x105b55960 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2495:21 38: 0x105b55954 - core::num::::overflowing_mul::h912f9a904ba5b669 at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/num/int_macros.rs:1748:18 39: 0x105b55954 - faer::utils::unchecked_mul::hcb36f4ae86311f68 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/utils/mod.rs:3:27 40: 0x105b55954 - faer::mat::matmut::MatMut::ptr_at_mut_unchecked::h285d64675ce3b40c at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:236:13 41: 0x105b55954 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:297:9 42: 0x105b55954 - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 43: 0x105b55954 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 44: 0x105b55954 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2495:21 45: 0x105b58dbc - faer::utils::unchecked_mul::hcb36f4ae86311f68 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/utils/mod.rs:5:9 46: 0x105b58dbc - faer::mat::matmut::MatMut::ptr_at_mut_unchecked::h285d64675ce3b40c at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:236:13 47: 0x105b58dbc - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:297:9 48: 0x105b58dbc - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 49: 0x105b58dbc - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 50: 0x105b58dbc - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2501:21 51: 0x105b58e5c - faer::mat::matmut::MatMut::as_ptr_mut::h7f0cba2652462045 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:189:31 52: 0x105b58e5c - faer::mat::matmut::MatMut::ptr_at_mut_unchecked::h285d64675ce3b40c at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:239:13 53: 0x105b58e5c - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:297:9 54: 0x105b58e5c - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 55: 0x105b58e5c - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 56: 0x105b58e5c - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2501:21 57: 0x1058e4734 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1074:19 58: 0x1058f2e80 - >>,&Lhs3,&Rhs3> as equator::traits::Expr>::eval_expr::ha9c644e55e85b267 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/traits.rs:80:34 59: 0x1058f2e80 - as equator::traits::Expr>::eval_expr::hdddb6a8e967583f6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/traits.rs:120:33 60: 0x1058f2e80 - <&&equator::structures::Finalize as equator::traits::Expr>::eval_expr::hfc7a51ed3932eb54 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/structures.rs:74:9 61: 0x1058f2e80 - faer::mat::matref::MatRef::ptr_inbounds_at::h7f16ca7b1046d4e4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:206:9 62: 0x1058f2e80 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get_unchecked::h32d48e2e796b464b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:472:30 63: 0x1058f2e80 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get::h4969a6490e489886 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:479:18 64: 0x1058f2e80 - faer::mat::matref::MatRef::get::h94fd9d1ddc95343b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:400:9 65: 0x1058f2e80 - faer::mat::matref::MatRef::read::hbea11ced5bd23e32 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:429:13 66: 0x1058f2e80 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:53 67: 0x1058f3c54 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::h85ac89a5df0f81e4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:296:9 68: 0x1058f3c54 - faer::mat::matmut::MatMut::write_unchecked::hbbc8646a63edaedc at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 69: 0x1058f3c54 - faer::mat::matmut::MatMut::write::hf814202314f079a8 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 70: 0x1058f3c54 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:37 71: 0x1058f3264 - faer::mat::matref::MatRef::ptr_at_unchecked::hf8296fe87a707dfa at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:172:13 72: 0x1058f3264 - faer::mat::matref::MatRef::ptr_inbounds_at::h7f16ca7b1046d4e4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:207:9 73: 0x1058f3264 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get_unchecked::h32d48e2e796b464b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:472:30 74: 0x1058f3264 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get::h4969a6490e489886 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:479:18 75: 0x1058f3264 - faer::mat::matref::MatRef::get::h94fd9d1ddc95343b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:400:9 76: 0x1058f3264 - faer::mat::matref::MatRef::read::hbea11ced5bd23e32 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:429:13 77: 0x1058f3264 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:53 78: 0x1058f3c54 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::h85ac89a5df0f81e4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:296:9 79: 0x1058f3c54 - faer::mat::matmut::MatMut::write_unchecked::hbbc8646a63edaedc at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 80: 0x1058f3c54 - faer::mat::matmut::MatMut::write::hf814202314f079a8 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 81: 0x1058f3c54 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:37 82: 0x1058f3264 - faer::mat::matref::MatRef::ptr_at_unchecked::hf8296fe87a707dfa at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:172:13 83: 0x1058f3264 - faer::mat::matref::MatRef::ptr_inbounds_at::h7f16ca7b1046d4e4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:207:9 84: 0x1058f3264 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get_unchecked::h32d48e2e796b464b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:472:30 85: 0x1058f3264 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get::h4969a6490e489886 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:479:18 86: 0x1058f3264 - faer::mat::matref::MatRef::get::h94fd9d1ddc95343b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:400:9 87: 0x1058f3264 - faer::mat::matref::MatRef::read::hbea11ced5bd23e32 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:429:13 88: 0x1058f3264 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:53 89: 0x1058f3afc - faer::mat::matmut::MatMut::write::hf814202314f079a8 90: 0x1058f3afc - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:37 91: 0x1058f3264 - faer::mat::matref::MatRef::ptr_at_unchecked::hf8296fe87a707dfa at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:172:13 92: 0x1058f3264 - faer::mat::matref::MatRef::ptr_inbounds_at::h7f16ca7b1046d4e4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:207:9 93: 0x1058f3264 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get_unchecked::h32d48e2e796b464b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:472:30 94: 0x1058f3264 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get::h4969a6490e489886 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:479:18 95: 0x1058f3264 - faer::mat::matref::MatRef::get::h94fd9d1ddc95343b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:400:9 96: 0x1058f3264 - faer::mat::matref::MatRef::read::hbea11ced5bd23e32 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:429:13 97: 0x1058f3264 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:53 98: 0x1058f3c54 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::h85ac89a5df0f81e4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:296:9 99: 0x1058f3c54 - faer::mat::matmut::MatMut::write_unchecked::hbbc8646a63edaedc at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 100: 0x1058f3c54 - faer::mat::matmut::MatMut::write::hf814202314f079a8 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 101: 0x1058f3c54 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:37 102: 0x1058f3264 - faer::mat::matref::MatRef::ptr_at_unchecked::hf8296fe87a707dfa at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:172:13 103: 0x1058f3264 - faer::mat::matref::MatRef::ptr_inbounds_at::h7f16ca7b1046d4e4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:207:9 104: 0x1058f3264 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get_unchecked::h32d48e2e796b464b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:472:30 105: 0x1058f3264 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get::h4969a6490e489886 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:479:18 106: 0x1058f3264 - faer::mat::matref::MatRef::get::h94fd9d1ddc95343b at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:400:9 107: 0x1058f3264 - faer::mat::matref::MatRef::read::hbea11ced5bd23e32 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:429:13 108: 0x1058f3264 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1149:53 109: 0x1058e19f8 - core::ptr::metadata::from_raw_parts::hd5d076516bb0acec at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/ptr/metadata.rs:118:14 110: 0x1058e19f8 - core::ptr::null::hfc59081f5c00f0f1 at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/ptr/mod.rs:516:5 111: 0x1058e19f8 - equator::spec::by_val::ByVal::get_ptr::hcd560a460879946f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/spec/by_val.rs:44:27 112: 0x1058e19f8 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:654:9 113: 0x1058e19f8 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::h270207c960c97546 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1154:37 114: 0x1058e0d60 - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 115: 0x1058e0d60 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 116: 0x1058e0d60 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::h270207c960c97546 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1154:37 117: 0x1058deec0 - core::num::::overflowing_mul::h912f9a904ba5b669 at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/num/int_macros.rs:1748:26 118: 0x1058deec0 - faer::utils::unchecked_mul::hcb36f4ae86311f68 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/utils/mod.rs:3:27 119: 0x1058deec0 - faer::mat::matref::MatRef::ptr_at_unchecked::h4e4ce6cd658764ed at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:169:13 120: 0x1058deec0 - faer::mat::matref::MatRef::ptr_inbounds_at::h15a71cdd4c79bae9 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:207:9 121: 0x1058deec0 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get_unchecked::he64931c5fd7686cb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:472:30 122: 0x1058deec0 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get::hf8a6325640a5e3d4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:479:18 123: 0x1058deec0 - faer::mat::matref::MatRef::get::h20d8cb9d6af2bb53 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:400:9 124: 0x1058deec0 - faer::mat::matref::MatRef::read::h5a532365d2909d54 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:429:13 125: 0x1058deec0 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::h270207c960c97546 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1140:33 126: 0x1058f4a74 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::hffcb3acdbfcb297f 127: 0x1058df2b8 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::h270207c960c97546 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1153:42 128: 0x1058f4c00 - faer::linalg::matmul::outer_prod::outer_prod_with_conj_impl::h9039cdf322005a9c at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1004 129: 0x1058df2b8 - faer::linalg::matmul::outer_prod::outer_prod_with_conj::h270207c960c97546 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1153:42 130: 0x1058f5450 - faer::linalg::matmul::outer_prod::outer_prod_with_conj_impl::h9039cdf322005a9c at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/matmul/mod.rs:1016:9 131: 0x105b94168 - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 132: 0x105b94168 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 133: 0x105b94168 - faer::linalg::evd::hessenberg_cplx_evd::aggressive_early_deflation::hc0da3d1d6fd8e003 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:785:13 134: 0x105abb390 - >>,&Lhs3,&Rhs3> as equator::traits::Expr>::eval_expr::ha9c644e55e85b267 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/traits.rs:79:5 135: 0x105abb390 - as equator::traits::Expr>::eval_expr::hdddb6a8e967583f6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/traits.rs:120:33 136: 0x105abb390 - <&&equator::structures::Finalize as equator::traits::Expr>::eval_expr::hfc7a51ed3932eb54 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/structures.rs:74:9 137: 0x105abb390 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:296:9 138: 0x105abb390 - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 139: 0x105abb390 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 140: 0x105abb390 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2178:21 141: 0x105abb040 - >>,&Lhs3,&Rhs3> as equator::traits::Expr>::eval_expr::ha9c644e55e85b267 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/traits.rs:80:46 142: 0x105abb040 - as equator::traits::Expr>::eval_expr::hdddb6a8e967583f6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/traits.rs:120:9 143: 0x105abb040 - <&&equator::structures::Finalize as equator::traits::Expr>::eval_expr::hfc7a51ed3932eb54 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/structures.rs:74:9 144: 0x105abb040 - faer::mat::matmut::MatMut::ptr_inbounds_at_mut::he02378dc6d8fa75f at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:296:9 145: 0x105abb040 - faer::mat::matmut::MatMut::write_unchecked::h891fa51adf5cb916 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:637:41 146: 0x105abb040 - faer::mat::matmut::MatMut::write::hc324d397d708f9eb at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:655:18 147: 0x105abb040 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2178:21 148: 0x105b56698 - >>,&Lhs3,&Rhs3> as equator::traits::Expr>::eval_expr::ha9c644e55e85b267 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/traits.rs:80:32 149: 0x105b56698 - as equator::traits::Expr>::eval_expr::hdddb6a8e967583f6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/traits.rs:120:9 150: 0x105b56698 - <&&equator::structures::Finalize as equator::traits::Expr>::eval_expr::hfc7a51ed3932eb54 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/equator-0.4.1/src/structures.rs:74:9 151: 0x105b56698 - faer::mat::mat_index:: for faer::mat::matref::MatRef>::get::hf8a6325640a5e3d4 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/mat_index.rs:478:9 152: 0x105b56698 - faer::mat::matref::MatRef::get::h20d8cb9d6af2bb53 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:400:9 153: 0x105b56698 - faer::mat::matref::MatRef::read::h5a532365d2909d54 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matref.rs:429:13 154: 0x105b56698 - faer::mat::matmut::MatMut::read::hcf30cd6752cb6258 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/mat/matmut.rs:624:9 155: 0x105b56698 - faer::linalg::evd::hessenberg_cplx_evd::multishift_qr_sweep::h9fac0f315c8cc5a6 at /Users/jul/.cargo/registry/src/index.crates.io-6f17d22bba15001f/faer-0.19.2/src/linalg/evd/hessenberg_cplx_evd.rs:2504:25 156: 0x198c8df94 - __pthread_joiner_wake Traceback (most recent call last): File "/Users/jul/IBM/snippets/sabrebug.py", line 16, in tqc = pm.run(qc) ^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/transpiler/passmanager.py", line 464, in wrapper return meth(*meth_args, **meth_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/transpiler/passmanager.py", line 226, in run return super().run( ^^^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/passmanager/passmanager.py", line 231, in run out = [ ^ File "/Users/jul/Qiskit/qiskit/qiskit/passmanager/passmanager.py", line 232, in _run_workflow(program=program, pass_manager=self, callback=callback, **kwargs) File "/Users/jul/Qiskit/qiskit/qiskit/passmanager/passmanager.py", line 292, in _run_workflow passmanager_ir, final_state = flow_controller.execute( ^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/passmanager/base_tasks.py", line 218, in execute passmanager_ir, state = next_task.execute( ^^^^^^^^^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/transpiler/basepasses.py", line 195, in execute new_dag, state = super().execute( ^^^^^^^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/passmanager/base_tasks.py", line 98, in execute ret = self.run(passmanager_ir) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/transpiler/passes/layout/sabre_layout.py", line 265, in run components = disjoint_utils.run_pass_over_connected_components(dag, target, inner_run) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/transpiler/passes/layout/disjoint_utils.py", line 51, in run_pass_over_connected_components return [run_func(dag, cmap_components[0])] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/jul/Qiskit/qiskit/qiskit/transpiler/passes/layout/sabre_layout.py", line 399, in _inner_run (initial_layout, final_permutation, sabre_result) = sabre_layout_and_routing( ^^^^^^^^^^^^^^^^^^^^^^^^^ pyo3_runtime.PanicException: called `Option::unwrap()` on a `None` value ```

Running with RUST_BACKTRACE=1 seems to give a bit more sensible information, but I'm not sure how this is consistent with the full backtrace:

``` run_in_parallel: true Starting layout length: 21 thread '' panicked at 'called `Option::unwrap()` on a `None` value', crates/accelerate/src/sabre/layer.rs:73:52 stack backtrace: 0: _rust_begin_unwind 1: core::panicking::panic_fmt 2: core::panicking::panic 3: qiskit_accelerate::sabre::route::swap_map_trial 4: qiskit_accelerate::sabre::layout::layout_trial 5: rayon::iter::plumbing::bridge_producer_consumer::helper 6: rayon_core::join::join_context::{{closure}} 7: rayon::iter::plumbing::bridge_producer_consumer::helper 8: rayon_core::join::join_context::{{closure}} 9: rayon::iter::plumbing::bridge_producer_consumer::helper 10: rayon_core::join::join_context::{{closure}} 11: rayon::iter::plumbing::bridge_producer_consumer::helper 12: rayon_core::join::join_context::{{closure}} 13: as rayon_core::job::Job>::execute 14: rayon_core::registry::WorkerThread::wait_until_cold note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace. ```