-
Notifications
You must be signed in to change notification settings - Fork 82
Open
Labels
cirq_interopIssues related to Cirq interopIssues related to Cirq interop
Description
This issue tracks problems that had to be worked around to bump our Cirq version from 1.4 onwards in #1761. Note that many unit tests in the qualtran.bloqs quantum standard library use a Cirq simulator for numerical simulation. A way forward might be to re-work these unit tests to use native Qualtran tensor contraction.
Note: the performance regressions are likely a consequence of the kludge needed in #1761.
Performance regressions
qualtran.bloqs.hamiltonian_simulation.hamiltonian_simulation_by_gqsp_test.test_hamiltonian_simulation_by_gqspqualtran.bloqs.rotations.hamming_weight_phasing_test.test_hamming_weight_phasingn=6, 7now marked asslow
Tests marked slow that likely got slower
qualtran.bloqs.phase_estimation.qubitization_qpe_test.test_qubitization_phase_estimation_of_walk(also seecirq.unitarydoes not work for controlledQubitizationWalkOperatoroperator #1495)qualtran.bloqs.phase_estimation.text_book_qpe_test.test_textbook_phase_estimation_qubitized_walk(also seecirq.unitarydoes not work for controlledQubitizationWalkOperatoroperator #1495)qualtran.bloqs.qubitization.qubitization_walk_operator_test.test_qubitization_walk_operator
Breakages
qualtran.bloqs.reflections.reflection_using_prepare_test.test_reflection_using_preparenow gets SIGKILL -ed. See test_reflection_using_prepare broken with cirq 1.5 #1737qualtran.bloqs.rotations.hamming_weight_phasing_test.test_hamming_weight_phasingn=8causes SIGKILLqualtran.bloqs.rotations.phasing_via_cost_function_test.test_hamming_weight_phasing_using_phase_via_cost_functionqualtran.bloqs.rotations.quantum_variable_rotation_test.test_qvr_phase_gradient_cost_reg_greater_than_b_grad
Related issues
cirq.unitaryfails for bloq withAndfollowed byAnd^dagger#1488 -- If Cirq is allowed to decompose gates, it often gets down toAnd(uncompue=True)which says that it's not unitary. Support Numpy 2 via supporting Cirq 1.5+ #1761 "fixes" this by doing tensor contraction in Qualtran and giving a big tensor to Cirq. This causes performance regression- Tensor contraction 4-5x slower than
cirq.unitaryfor hamiltonian simulation bloq #1336 -- The Cirq simulator is often faster for small-qubit-count circuits since it decomposes and simulates in one fell swoop instead of constructing a tensor network and then having quimb contract it
Metadata
Metadata
Assignees
Labels
cirq_interopIssues related to Cirq interopIssues related to Cirq interop