Software Pipelining for Quantum Loop Programs

Jingzhe Guo,Mingsheng Ying
DOI: https://doi.org/10.1109/TSE.2022.3232623
IF: 7.4
2023-01-01
IEEE Transactions on Software Engineering
Abstract:We propose a method for performing software pipelining on quantum for-loop programs to exploit parallelism in and across iterations. We redefined concepts useful in program optimization, including array aliasing, instruction dependency, and resource conflict required in optimizing quantum programs. Using these concepts, we present a software pipelining framework exploiting instruction-level parallelism in quantum loop programs. This method is further enhanced with several improvements to reduce total gate count and program depth. The optimization method is then evaluated on some popular quantum algorithms like Grover and QAOA, and compared under different configurations and with several baseline compilers. The evaluation results show that our approach can schedule loop programs with depth close to the depth of the entire loop unrolling while generating smaller code sizes and consuming much less time. This is the first step towards optimization of a quantum program with such loop control flow, as far as we know.
What problem does this paper attempt to address?