Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article
Open access

OpenQL: A Portable Quantum Programming Framework for Quantum Accelerators

Published: 20 December 2021 Publication History
  • Get Citation Alerts
  • Abstract

    With the potential of quantum algorithms to solve intractable classical problems, quantum computing is rapidly evolving, and more algorithms are being developed and optimized. Expressing these quantum algorithms using a high-level language and making them executable on a quantum processor while abstracting away hardware details is a challenging task. First, a quantum programming language should provide an intuitive programming interface to describe those algorithms. Then a compiler has to transform the program into a quantum circuit, optimize it, and map it to the target quantum processor respecting the hardware constraints such as the supported quantum operations, the qubit connectivity, and the control electronics limitations. In this article, we propose a quantum programming framework named OpenQL, which includes a high-level quantum programming language and its associated quantum compiler. We present the programming interface of OpenQL, we describe the different layers of the compiler and how we can provide portability over different qubit technologies. Our experiments show that OpenQL allows the execution of the same high-level algorithm on two different qubit technologies, namely superconducting qubits and Si-Spin qubits. Besides the executable code, OpenQL also produces an intermediate quantum assembly code, which is technology independent and can be simulated using the QX simulator.

    References

    [1]
    Ali Javadi Abhari, Arvin Faruque, et al. 2012. Scaffold: Quantum programming language. Princeton University TR-934-12, Princeton, NJ.
    [2]
    A. J. Abhari, S. Patil, D. Kudrow, J. Heckey, A. Lvov, F. T. Chong, and M. Martonosi. 2015. ScaffCC: Scalable compilation and analysis of quantum programs. Parallel Comput. 45, C (June 2015), 2–17. (2015).
    [3]
    Héctor Abraham et al. 2019. Qiskit: An Open-source Framework for Quantum Computing.
    [4]
    Carmen G. Almudever, Lingling Lao, Xiang Fu, Nader Khammassi, Imran Ashraf, Dan Iorga, Savvas Varsamopoulos, Christopher Eichler, Andreas Wallraff, Lotte Geck, et al. 2017. The engineering challenges in quantum computing. In Proceedings of the Design, Automation & Test in Europe Conference & Exhibition (DATE’17). IEEE, 836–845. https://doi.org/10.23919/DATE.2017.7927104
    [5]
    Amazon. [n.d.]. Amazon Braket. Retrieved from https://aws.amazon.com/braket/.
    [6]
    Amazon. [n.d.]. Amazon Braket SDK. Retrieved from https://github.com/aws/amazon-braket-sdk-python.
    [7]
    Matthew Amy, Dmitri Maslov, Michele Mosca, and Martin Roetteler. 2013. A meet-in-the-middle algorithm for fast synthesis of depth-optimal quantum circuits. IEEE Trans. Comput.-Aid. Des. Integr. Circ. Syst. 32 (2013), 818–830.
    [8]
    A. Barenco, C. H. Bennett, R. Cleve, D. P. DiVincenzo, N. Margolus, P. Shor, T. Sleator, J. Smolin, and H. Weinfurter. 1995. Elementary gates for quantum computation. Phys. Rev. A 52, 5, (Nov. 1995), 3457–3467. https://doi.org/10.1103/PhysRevA.52.3457
    [9]
    S. Bettelli, T. Calarco, and L. Serafini. 2003. Toward an architecture for quantum programming. Eur. Phys. J. D 25 (2003), 181–200. https://doi.org/10.1140/epjd/e2003-00242-2
    [10]
    C. Bultink, T. E. O’Brien, R. Vollmer, N. Muthusubramanian, M. W. Beekman, M. A. Rol, X. Fu, B. Tarasinski, V. Ostrouckh, B. Varbanov, A. Bruno, and L. DiCarlo. 2020. Protecting quantum entanglement from qubit errors and leakage via repetitive parity measurements. Science Advances 6, 12, eaay3050 (2020). https://doi.org/10.1126/sciadv.aay3050
    [11]
    David Deutsch. 1985. Quantum theory, the Church-Turing principle and the universal quantum computer. 400 (1985), 97–117.
    [12]
    M. Fingerhuth. Open-Source Quantum Software Projects. Retrieved August 1, 2020 from https://github.com/qosf/awesome-quantum-software#quantum-compilers.
    [13]
    Benoît Jacob (founder), Gaël Guennebaud (guru), and many more. 2019. The Eigen Documentation. Retrieved Aril 9, 2019 from http://eigen.tuxfamily.org/index.php?title=Main_Page.
    [14]
    X. Fu, L. Riesebos, M. A. Rol, J. van Straten, J. van Someren, N. Khammassi, I. Ashraf, R. F. L. Vermeulen, V. Newsum, K. K. L. Loh, J. C. de Sterke, W. J. Vlothuizen, R. N. Schouten, C. G. Almudever, L. DiCarlo, and K. Bertels. 2018. eQASM: An executable quantum instruction set architecture. In Proceedings of the 25th International Symposium on High-Performance Computer Architecture (HPCA’19).
    [15]
    X. Fu, L. Riesebos, M. A. Rol, J. van Straten, J. van Someren, N. Khammassi, I. Ashraf, R. F. L. Vermeulen, V. Newsum, K. K. L. Loh, J. C. de Sterke, W. J. Vlothuizen, R. N. Schouten, C. G. Almudever, L. DiCarlo, and K. Bertels. [n.d.]. eQASM: An Executable Quantum Instruction Set Architecture.
    [16]
    X. Fu, M. A. Rol, C. C. Bultink, J. van Someren, N. Khammassi, I. Ashraf, R. F. L. Vermeulen, J. C. de Sterke, W. J. Vlothuizen, R. N. Schouten, C. G. Almudever, L. DiCarlo, and K. Bertels. 2017. An experimental microarchitecture for a superconducting quantum processor. In Proceedings of the 50th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-50’17). Association for Computing Machinery, New York, NY, USA, 813–825. https://doi.org/10.1145/3123939.3123952
    [17]
    Lov K. Grover. 1997. Quantum mechanics helps in searching for a needle in a haystack. Phys. Rev. Lett. 79, 2 (1997), 325–328. http://link.aps.org/doi/10.1103/PhysRevLett.79.325.
    [18]
    IBM. [n.d.]. IBM Quantum Experience. Retrieved from https://www.research.ibm.com/ibm-q/.
    [19]
    Ali JavadiAbhari, Shruti Patil, Daniel Kudrow, Jeff Heckey, Alexey Lvov, Frederic T. Chong, and Margaret Martonosi. 2014. ScaffCC: A framework for compilation and analysis of quantum computing programs. In Proceedings of the 11th ACM Conference on Computing Frontiers (CF’14). ACM, New York, NY, Article 1, 10 pages.
    [20]
    James Jeffers and James Reinders. 2013. Intel Xeon Phi Coprocessor High Performance Programming (1st ed.). Morgan Kaufmann Publishers Inc., San Francisco, CA.
    [21]
    Lana Josipović, Radhika Ghosal, and Paolo Ienne. 2018. Dynamically scheduled high-level synthesis. In Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA’18). ACM, New York, NY, 127–136.
    [22]
    N. Khammassi, I. Ashraf, X. Fu, C. G. Almudever, and K. L. M. Bertels. 2017. QX: A high-performance quantum computer simulation platform. Proceedings of the IEEE Design, Automation & Test in Europe Conference & Exhibition (DATE’17) (March 2017), 464–469.
    [23]
    Nader Khammassi, Imran Ashraf, Xiang Fu, Carmen G. Almudéver, and Koen Bertels. 2017. QX: A high-performance quantum computer simulation platform. In Proceedings of the Design, Automation & Test in Europe Conference & Exhibition (DATE’17). IEEE, 464–469.
    [24]
    N. Khammassi, G. G. Guerreschi, I. Ashraf, J. W. Hogaboam, C. G. Almudever, and K. Bertels. 2018. cQASM v1. 0: Towards a common quantum assembly language. arXiv:1805.09607. Retrieved from https://arxiv.orb/abs/1805.09607.
    [25]
    Lingling Lao, Daniel M. Manzano, Hans van Someren, Imran Ashraf, and Carmen G. Almudever. 2019. Mapping of quantum circuits onto NISQ superconducting processors. arXiv:1908.04226. Retrieved from https://arxiv.org/abs/1908.04226.
    [26]
    L. Lao, B. van Wee, I. Ashraf, J. van Someren, N. Khammassi, K. Bertels, and C. G. Almudever. 2019. Mapping of lattice surgery-based quantum circuits on surface code architectures. Quant. Sci. Technol. 4 (2019), 015005.
    [27]
    Ryan LaRose. 2019. Overview and comparison of gate level quantum software platforms. Quantum 3 (Mar. 2019), 130.
    [28]
    Seth Lloyd. 1996. Universal quantum simulators. Science 273, 5278 (1996), 1073–1078.
    [29]
    David Luebke, Mark Harris, Naga Govindaraju, Aaron Lefohn, Mike Houston, John Owens, Mark Segal, Matthew Papakipos, and Ian Buck. 2006. GPGPU: General-purpose computation on graphics hardware. In Proceedings of the ACM/IEEE Conference on Supercomputing (SC’06). Association for Computing Machinery, New York, NY, 208–es.
    [30]
    M. Fingerhuth. [n.d.]. Open-Source Quantum Software Projects. Retrieved from https://github.com/qosf/awesome-quantum-software#quantum-simulators.
    [31]
    Easwar Magesan, Jay M. Gambetta, and Joseph Emerson. 2011. Scalable and robust randomized benchmarking of quantum processes. Phys. Rev. Lett. 106 (2011), 180504.
    [32]
    Christopher Monroe and Jungsang Kim. 2013. Scaling the ion trap quantum processor. Science 339, 6124 (2013), 1164–1169.
    [33]
    Mikko Möttönen, Juha J. Vartiainen, Ville Bergholm, and Martti M. Salomaa. 2004. Quantum circuits for general multiqubit gates. Phys. Rev. Lett. 93, 13 (Sep. 2004), 130502.
    [34]
    Michael A. Nielsen and Isaac L. Chuang. 2011. Quantum Computation and Quantum Information: 10th Anniversary Edition (10th ed.). Cambridge University Press, New York, NY.
    [35]
    T. E. O’Brien, B. Senjean, R. Sagastizabal, X. Bonet-Monroig, A. Dutkiewicz, F. Buda, L. DiCarlo, and L. Visscher. 2019. Calculating energy derivatives for quantum chemistry on a quantum computer. arxiv:1905.03742. Retrieved from http://arxiv.org/abs/1905.03742.
    [36]
    Selinger P. and Valiron B.2005. A lambda calculus for quantum computation with classical control. In Typed Lambda Calculi and Applications. P. Urzyczyn (Ed.), Lecture Notes in Computer Science, Vol. 3461 (2005).
    [37]
    Jennifer Paykin, Robert Rand, and Steve Zdancewic. 2017. QWIRE: A core language for quantum circuits. In Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages (POPL’17). Association for Computing Machinery, New York, NY, 846–858.
    [38]
    QuTech. [n.d.]. Quantum Inspire: The Multi Hardware Quantum Technology Platform. Retrieved from https://www.quantum-inspire.com/.
    [39]
    Matthew David Reed. 2013. Entanglement and Quantum Error Correction with Superconducting Qubits. Ph.D. Dissertation. Yale University.
    [40]
    P. Rogers. 2016. HSA overview. In Heterogeneous System Architecture, Wen mei W. Hwu (Ed.). Morgan Kaufmann, Boston, 7–18.
    [41]
    M. A. Rol, F. Battistel, F. K. Malinowski, C. C. Bultink, B. M. Tarasinski, R. Vollmer, N. Haider, N. Muthusubramanian, A. Bruno, B. M. Terhal, and L. DiCarlo. 2019. A fast, low-leakage, high-fidelity two-qubit gate for a programmable superconducting quantum computer. arxiv:1903.02492. Retrieved from http://arxiv.org/abs/1903.02492.
    [42]
    R. Sagastizabal, X. Bonet-Monroig, M. Singh, M. A. Rol, C. C. Bultink, X. Fu, C. H. Price, V. P. Ostroukh, N. Muthusubramanian, A. Bruno, M. Beekman, N. Haider, T. E. O’Brien, and L. DiCarlo. 2019. Error mitigation by symmetry verification on a variational quantum eigensolver. arxiv:1902.11258. Retrieved from http://arxiv.org/abs/1902.11258.
    [43]
    Peter Selinger. 2004. Towards a quantum programming language. Math. Struct. Comput. Sci. 14, 4 (2004), 527–586.
    [44]
    V. Shende, S. S. Bullock, and I. Markov. 2006. Synthesis of quantum logic circuits. IEEE Trans. Comput.-Aid. Des. Integr. Circ. Syst. 25 (July 2006), 1000–1010.
    [45]
    Peter W. Shor. 1997. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM J. Comput. 26, 5 (Oct. 1997), 1484–1509.
    [46]
    Robert S. Smith, Michael J. Curtis, and William J. Zeng. 2016. A practical quantum instruction set architecture. arxiv:1608.03355 [quant-ph]. Retrieved from https://arxiv.org/abs/1608.03355.
    [47]
    Robert S. Smith, Eric C. Peterson, Mark G. Skilbeck, and Erik J. Davis. 2020. An spen-source, industrial-strength optimizing compiler for quantum programs. arxiv:2003.13961 [quant-ph]. Retrieved from https://arxiv.org/abs/2003.13961.
    [48]
    Damian S. Steiger, Thomas Häner, and Matthias Troyer. 2018. ProjectQ: An open source software framework for quantum computing. Quantum 2 (Jan. 2018), 49.
    [49]
    Krysta Svore, Martin Roetteler, Alan Geller, Matthias Troyer, John Azariah, Christopher Granade, Bettina Heim, Vadym Kliuchnikov, Mariia Mykhailova, and Andres Paz. 2018. Q#: Enabling scalable quantum computing and development with a high-level DSL. In Proceedings of the Workshop on Real World Domain Specific Languages (RWDSL’18).
    [50]
    Texas Instruments. [n.d.]. OMAP3530 Application Processors. Retrieved from http://www.ti.com/product/omap3530.
    [51]
    S. Vassiliadis, S. Wong, G. N. Gaydadjiev, K. Bertels, G. K. Kuzmanov, and E. Moscu Panainte. 2004. The molen polymorphic processor. IEEE Trans. Comput. 53 (2004), 1363–1375.
    [52]
    Richard Versluis, Stefano Poletto, Nader Khammassi, Brian Tarasinski, Nadia Haider, David J. Michalak, Alessandro Bruno, Koen Bertels, and Leonardo DiCarlo. 2017. Scalable quantum circuit and control for a superconducting surface code. Phys. Rev. Appl. 8, 3 (2017), 034021.
    [53]
    T. Watson, Stephan Philips, E. Kawakami, D. Ward, P. Scarlino, M. Veldhorst, D. Savage, M. Lagally, Mark Friesen, Susan Coppersmith, M. Eriksson, and L. Vandersypen. 2018. A programmable two-qubit quantum processor in silicon. Nature 555 (03 2018).
    [54]
    Xilinx. [n.d.]. Zynq-7000 All Programmable SoC. Retrieved from http://www.xilinx.com/products/silicon-devices/soc/zynq-7000.
    [55]
    Mohamed Zahran. 2016. Heterogeneous computing: Here to stay. Queue 14, 6 (Dec. 2016), 31–42.
    [56]
    Margherita Zorzi. 2016. On quantum lambda calculi: A foundational perspective. Math. Struct. Comput. Sci. 26, 7 (2016), 1107–1195.
    [57]
    Bernhard Ömer. 1998. A Procedural Formalism for Quantum Computing. Technical Report.

    Cited By

    View all
    • (2024)Resource analysis and modifications of quantum computing with noisy qubits for elliptic curve discrete logarithmsScientific Reports10.1038/s41598-024-54434-w14:1Online publication date: 16-Feb-2024
    • (2023)Kuantum Programlama Açısından Kuantum Derleyicilerin Karşılaştırmalı Analizi ve IBMQ UygulamasıComparative Analysis of Quantum Compilers in Terms of Quantum Programming and IBMQ ImplementationAdıyaman Üniversitesi Mühendislik Bilimleri Dergisi10.54365/adyumbd.133419610:21(227-241)Online publication date: 31-Dec-2023
    • (2023)isQ: An Integrated Software Stack for Quantum ProgrammingIEEE Transactions on Quantum Engineering10.1109/TQE.2023.32758684(1-16)Online publication date: 2023
    • Show More Cited By

    Index Terms

    1. OpenQL: A Portable Quantum Programming Framework for Quantum Accelerators

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Journal on Emerging Technologies in Computing Systems
      ACM Journal on Emerging Technologies in Computing Systems  Volume 18, Issue 1
      January 2022
      497 pages
      ISSN:1550-4832
      EISSN:1550-4840
      DOI:10.1145/3483339
      • Editor:
      • Ramesh Karri
      Issue’s Table of Contents
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Journal Family

      Publication History

      Published: 20 December 2021
      Accepted: 01 July 2021
      Revised: 01 March 2021
      Received: 01 November 2020
      Published in JETC Volume 18, Issue 1

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. Quantum compiler
      2. quantum computing
      3. quantum circuit
      4. quantum processor

      Qualifiers

      • Research-article
      • Refereed

      Funding Sources

      • Intel Corporation

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)505
      • Downloads (Last 6 weeks)40
      Reflects downloads up to 26 Jul 2024

      Other Metrics

      Citations

      Cited By

      View all
      • (2024)Resource analysis and modifications of quantum computing with noisy qubits for elliptic curve discrete logarithmsScientific Reports10.1038/s41598-024-54434-w14:1Online publication date: 16-Feb-2024
      • (2023)Kuantum Programlama Açısından Kuantum Derleyicilerin Karşılaştırmalı Analizi ve IBMQ UygulamasıComparative Analysis of Quantum Compilers in Terms of Quantum Programming and IBMQ ImplementationAdıyaman Üniversitesi Mühendislik Bilimleri Dergisi10.54365/adyumbd.133419610:21(227-241)Online publication date: 31-Dec-2023
      • (2023)isQ: An Integrated Software Stack for Quantum ProgrammingIEEE Transactions on Quantum Engineering10.1109/TQE.2023.32758684(1-16)Online publication date: 2023
      • (2023)Efficient Parameterised Compilation for Hybrid Quantum Programming2023 IEEE International Conference on Quantum Computing and Engineering (QCE)10.1109/QCE57702.2023.10192(103-111)Online publication date: 17-Sep-2023
      • (2023)qgym: A Gym for Training and Benchmarking RL-Based Quantum Compilation2023 IEEE International Conference on Quantum Computing and Engineering (QCE)10.1109/QCE57702.2023.10179(26-30)Online publication date: 17-Sep-2023
      • (2023)Hungarian Qubit Assignment for Optimized Mapping of Quantum Circuits on Multi-Core ArchitecturesIEEE Computer Architecture Letters10.1109/LCA.2023.331885722:2(161-164)Online publication date: 1-Jul-2023
      • (2023)HiSEP-Q: A Highly Scalable and Efficient Quantum Control Processor for Superconducting Qubits2023 IEEE 41st International Conference on Computer Design (ICCD)10.1109/ICCD58817.2023.00023(86-93)Online publication date: 6-Nov-2023
      • (2023)Optimizing quantum algorithms on bipotent architecturesPhysical Review A10.1103/PhysRevA.108.022610108:2Online publication date: 17-Aug-2023
      • (2023)Quantum Computing Research Lines in the Italian Center for SupercomputingEmbedded Computer Systems: Architectures, Modeling, and Simulation10.1007/978-3-031-46077-7_28(423-434)Online publication date: 2-Jul-2023
      • (2022)Efficient Decomposition of Unitary Matrices in Quantum Circuit CompilersApplied Sciences10.3390/app1202075912:2(759)Online publication date: 12-Jan-2022
      • Show More Cited By

      View Options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      HTML Format

      View this article in HTML Format.

      HTML Format

      Get Access

      Login options

      Full Access

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media