Abstract
Quantum computing (QC) is an emerging computational paradigm that leverages the laws of quantum mechanics to perform elementary logic operations. Existing programming models for QC were designed with fault-tolerant hardware in mind, envisioning stand-alone applications. However, the susceptibility of near-term quantum computers to noise limits their stand-alone utility. To better leverage limited computational strengths of noisy quantum devices, hybrid algorithms have been suggested whereby quantum computers are used in tandem with their classical counterparts in a heterogeneous fashion. This modus operandi calls out for a programming model and a high-level programming language that natively and seamlessly supports heterogeneous quantum-classical hardware architectures in a single-source-code paradigm. Motivated by the lack of such a model, we introduce a language extension specification, called QCOR, which enables single-source quantum-classical programming. Programs written using the QCOR library-based language extensions can be compiled to produce functional hybrid binary executables. After defining QCOR's programming model, memory model, and execution model, we discuss how QCOR enables variational, iterative, and feed-forward QC. QCOR approaches quantum-classical computation in a hardware-agnostic heterogeneous fashion and strives to build on best practices of high-performance computing. The high level of abstraction in the language extension is intended to accelerate the adoption of QC by researchers familiar with classical high-performance computing.
Original language | English |
---|---|
Article number | 22 |
Journal | ACM Journal on Emerging Technologies in Computing Systems |
Volume | 16 |
Issue number | 2 |
DOIs | |
State | Published - Mar 18 2020 |
Funding
The authors acknowledge U.S. Department of Energy Advanced Scientific Computing Research funding under the Quantum Computing Application Teams program. This research used quantum computing system resources supported by the U.S. Department of Energy, Office of Science, Office of Advanced Scientific Computing Research program office. This article was authored by UT-Battelle LLC under contract no. DE-AC05-00OR22725 with the U.S. Department of Energy. The United States Government retains and the publisher, by accepting the article for publication, acknowledges that the United States Government retains a non-exclusive, paid-up, irrevocable, world-wide license to publish or reproduce the published form of this manuscript, or allow others to do so, for United States Government purposes. The Department of Energy will provide public access to these results of federally sponsored research in accordance with the DOE Public Access Plan (http://energy.gov/downloads/doe-public-access-plan). Authors’ addresses: T. M. Mintz; email: [email protected]; A. J. McCaskey; email: [email protected]; E. F. Dumitrescu; email: [email protected]; S. V. Moore; email: [email protected]; S. Powers; email: [email protected]; P. Lougovski; email: [email protected]. Publication rights licensed to ACM. ACM acknowledges that this contribution was authored or co-authored by an employee, contractor or affiliate of the United States government. As such, the Government retains a nonexclusive, royalty-free right to publish or reproduce this article, or to allow others to do so, for Government purposes only. © 2020 Copyright held by the owner/author(s). Publication rights licensed to ACM. 1550-4832/2020/03-ART22 $15.00 https://doi.org/10.1145/3380964
Funders | Funder number |
---|---|
U.S. Department of Energy Advanced Scientific Computing Research | |
U.S. Department of Energy | |
Office of Science | |
Advanced Scientific Computing Research |
Keywords
- NISQ
- Quantum computing
- heterogeneous computing
- programming model specification
- quantum programming