QCOR: A Language Extension Specification for the Heterogeneous Quantum-Classical Model of Computation

09/05/2019
by   Tiffany M. Mintz, et al.
0

Quantum computing is an emerging computational paradigm that leverages the laws of quantum mechanics to perform elementary logic operations. Existing programming models for quantum computing were designed with fault-tolerant hardware in mind, envisioning standalone applications. However, near-term quantum computers are susceptible to noise which limits their standalone 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, that enables single-source quantum-classical programming. Programs written using the QCOR library and directives based language extensions can be compiled to produce functional hybrid binary executables. After defining the QCOR's programming model, memory model, and execution model, we discuss how QCOR enables variational, iterative, and feed forward quantum computing. QCOR approaches quantum-classical computation in a hardware-agnostic heterogeneous fashion and strives to build on best practices of high performance computing (HPC). The high level of abstraction in the developed language is intended to accelerate the adoption of quantum computing by researchers familiar with classical HPC.

READ FULL TEXT

page 3

page 7

page 11

research
09/05/2023

A pragma based C++ framework for hybrid quantum/classical computation

Quantum computers promise exponential speed ups over classical computers...
research
10/08/2020

Extending C++ for Heterogeneous Quantum-Classical Computing

We present qcor - a language extension to C++ and compiler implementatio...
research
11/06/2019

XACC: A System-Level Software Infrastructure for Heterogeneous Quantum-Classical Computing

Quantum programming techniques and software have advanced significantly ...
research
04/08/2014

Transparallel mind: Classical computing with quantum power

Inspired by the extraordinary computing power promised by quantum comput...
research
03/01/2018

Q#: Enabling scalable quantum computing and development with a high-level domain-specific language

Quantum computing exploits quantum phenomena such as superposition and e...
research
03/30/2018

Performing Fully Parallel Constraint Logic Programming on a Quantum Annealer

A quantum annealer exploits quantum effects to solve a particular type o...

Please sign up or login with your details

Forgot password? Click here to reset