Software Pipelining for Quantum Loop Programs
Jingzhe Guo, Mingsheng Ying

TL;DR
This paper introduces a novel method for optimizing quantum loop programs through software pipelining, significantly reducing program depth and size by exploiting parallelism across iterations.
Contribution
It redefines key concepts for quantum program optimization and presents the first quantum loop pipelining algorithm that outperforms existing in-loop optimization techniques.
Findings
Reduces total depth close to fully unrolled programs
Generates significantly smaller code
Outperforms baseline in loop optimization
Abstract
We propose a method for performing software pipelining on quantum for-loop programs, exploiting parallelism in and across iterations. We redefine concepts that are useful in program optimization, including array aliasing, instruction dependency and resource conflict, this time in optimization of quantum programs. Using the redefined concepts, we present a software pipelining algorithm exploiting instruction-level parallelism in quantum loop programs. The optimization method is then evaluated on some test cases, including popular applications like QAOA, and compared with several baseline results. The evaluation results show that our approach outperforms loop optimizers exploiting only in-loop optimization chances by reducing total depth of the loop program to close to the optimal program depth obtained by full loop unrolling, while generating much smaller code in size. This is the first…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
