Skip to content

Test Pandora for large scale circuit optimization #569

@jordandsullivan

Description

@jordandsullivan

Is your feature request related to a problem? Please describe.
Abstract from Ultra-Large-Scale Compilation and Manipulation of Quantum Circuits with Pandora:

There is an enormous gap between what quantum circuit sizes can be compiled and manipulated with the current generation of quantum software and the sizes required by practical applications such as quantum chemistry or Shor’s algorithm. We present Pandora, an efficient, open-source, multithreaded, high-performance-computing-enabled tool based on circuit rewrites. Pandora can be used for quantum circuit equivalence checking, full compilations of large circuits, and scalable, streaming quantum resource estimation frameworks. Pandora can easily handle billions of gates and can stream circuit partitions in resource estimation pipelines at very high rates. We utilized Pandora for full compilations of Fermi-Hubbard 100x100 and 1024-bit Shor’s algorithm circuits. Compared to TKET and Qiskit, we determine a performance advantage for manipulating circuits of more than 10000 gates. For equivalence checking tasks, Pandora outperforms MQT.QCEC on specific circuits that have more than 32 qubits. The performance and versatility of Pandora open novel paths in quantum software.

GH repo: https://github.com/ioanamoflic/pandora?tab=readme-ov-file

Image

For their chosen benchmarks, they are able to achieve orders of magnitude speedup over Qiskit and TKET. They have not primarily focused yet on optimizing for, e.g. T count reduction, so this dimension of performance is somewhat unclear.

Describe the solution you'd like
Pandora is a re-write engine based on parallel database search within a library of known rewrite rules, implemented in SQL. The the goal of this issue is to integrate it with the existing UCC user interface and benchmark its performance against ucc-bench. That said, given that the scale of circuits the tool is aimed at optimizing (O(10^9) gates), Pandora may not be optimized well to the size of circuit benchmarks we have been exploring up to this point (O(10^4) gates), so we may need to expand our standard benchmarks to see an advantage to using the engine.

Another limitation to keep in mind is that it is fully based in DAG representations and does not yet support dynamic or structured circuits to my knowledge.

In addition, we may wish to revisit #62 , as Pandora seems to have an advantage for circuit equivalence checking over MQT.QCEC.

Describe alternatives you've considered

Additional context
Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    In progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions