Table of Contents
Fetching ...

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

Arnaud Gazda, Oceane Koska

TL;DR

This paper specifies the requirements of a hybrid quantum-classical framework compatible with HPC environments, and introduces a novel hardware-agnostic framework called Q-Pragma, which extends the classical programming language C++ heavily used in HPC via the addition of pragma directives to manage quantum computations.

Abstract

Quantum computers promise exponential speed ups over classical computers for various tasks. This emerging technology is expected to have its first huge impact in High Performance Computing (HPC), as it can solve problems beyond the reach of HPC. To that end, HPC will require quantum accelerators, which will enable applications to run on both classical and quantum devices, via hybrid quantum-classical nodes. Hybrid quantum-HPC applications should be scalable, executable on Quantum Error Corrected (QEC) devices, and could use quantum-classical primitives. However, the lack of scalability, poor performances, and inability to insert classical schemes within quantum applications has prevented current quantum frameworks from being adopted by the HPC community. This paper specifies the requirements of a hybrid quantum-classical framework compatible with HPC environments, and introduces a novel hardware-agnostic framework called Q-Pragma. This framework extends the classical programming language C++ heavily used in HPC via the addition of pragma directives to manage quantum computations.

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

TL;DR

This paper specifies the requirements of a hybrid quantum-classical framework compatible with HPC environments, and introduces a novel hardware-agnostic framework called Q-Pragma, which extends the classical programming language C++ heavily used in HPC via the addition of pragma directives to manage quantum computations.

Abstract

Quantum computers promise exponential speed ups over classical computers for various tasks. This emerging technology is expected to have its first huge impact in High Performance Computing (HPC), as it can solve problems beyond the reach of HPC. To that end, HPC will require quantum accelerators, which will enable applications to run on both classical and quantum devices, via hybrid quantum-classical nodes. Hybrid quantum-HPC applications should be scalable, executable on Quantum Error Corrected (QEC) devices, and could use quantum-classical primitives. However, the lack of scalability, poor performances, and inability to insert classical schemes within quantum applications has prevented current quantum frameworks from being adopted by the HPC community. This paper specifies the requirements of a hybrid quantum-classical framework compatible with HPC environments, and introduces a novel hardware-agnostic framework called Q-Pragma. This framework extends the classical programming language C++ heavily used in HPC via the addition of pragma directives to manage quantum computations.
Paper Structure (28 sections, 6 figures, 1 table)

This paper contains 28 sections, 6 figures, 1 table.

Figures (6)

  • Figure 1: Hybrid HPC node - composed of a Host and one or several devices. The QPU is connected to the Host like any other device.
  • Figure 2: Grammar of pragma quantum scope and pragma quantum move using BNF with regex
  • Figure 3: Grammar of pragma quantum ctrl using BNF with regex
  • Figure 4: Grammar of pragma quantum routine using BNF with regex
  • Figure 5: Grammar of pragma quantum compute using BNF with regex
  • ...and 1 more figures