当前位置: X-MOL 学术arXiv.cs.MS › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Extending C++ for Heterogeneous Quantum-Classical Computing
arXiv - CS - Mathematical Software Pub Date : 2020-10-08 , DOI: arxiv-2010.03935
Thien Nguyen, Anthony Santana, Tyler Kharazi, Daniel Claudino, Hal Finkel, Alexander McCaskey

We present qcor - a language extension to C++ and compiler implementation that enables heterogeneous quantum-classical programming, compilation, and execution in a single-source context. Our work provides a first-of-its-kind C++ compiler enabling high-level quantum kernel (function) expression in a quantum-language agnostic manner, as well as a hardware-agnostic, retargetable compiler workflow targeting a number of physical and virtual quantum computing backends. qcor leverages novel Clang plugin interfaces and builds upon the XACC system-level quantum programming framework to provide a state-of-the-art integration mechanism for quantum-classical compilation that leverages the best from the community at-large. qcor translates quantum kernels ultimately to the XACC intermediate representation, and provides user-extensible hooks for quantum compilation routines like circuit optimization, analysis, and placement. This work details the overall architecture and compiler workflow for qcor, and provides a number of illuminating programming examples demonstrating its utility for near-term variational tasks, quantum algorithm expression, and feed-forward error correction schemes.

中文翻译:

为异构量子经典计算扩展 C++

我们提出了 qcor - C++ 和编译器实现的语言扩展,它支持在单源上下文中实现异构量子经典编程、编译和执行。我们的工作提供了首创的 C++ 编译器,能够以量子语言不可知的方式实现高级量子内核(函数)表达,以及针对许多物理和虚拟量子的硬件不可知、可重定向的编译器工作流程计算后端。qcor 利用新颖的 Clang 插件接口并建立在 XACC 系统级量子编程框架的基础上,为量子经典编译提供最先进的集成机制,该机制利用了整个社区的最佳优势。qcor 最终将量子内核转换为 XACC 中间表示,并为电路优化、分析和布局等量子编译例程提供用户可扩展的钩子。这项工作详细介绍了 qcor 的整体架构和编译器工作流程,并提供了许多启发性的编程示例,展示了其在近期变分任务、量子算法表达和前馈纠错方案中的实用性。
更新日期:2020-10-09
down
wechat
bug