[论文解读] Extreme-Scale Programming Model for Quantum Acceleration within High Performance Computing
本文提出了 XACC,一种基于 C++ 的超大规模加速器编程模型,通过将量子内核卸载到量子加速器,使现有高性能计算(HPC)工作负载能够实现近期量子加速。该模型提供与硬件无关的高级 API 支持,适用于多种量子处理器和模拟器,从而实现可移植、可移植且高性能的混合量子-经典计算工作流。
Heterogeneous high-performance computing (HPC) systems offer novel architectures accommodating specialized processors that accelerate specific workloads. Near-term quantum computing technologies are poised to benefit applications as wide-ranging as quantum chemistry, machine learning, and optimization. A novel approach to scale these applications with future heterogeneous HPC is to enhance conventional computing systems with quantum processor accelerators. We present the eXtreme-scale ACCelerator programming model (XACC) to enable near-term quantum acceleration within existing conventional HPC applications and workflows. We design and demonstrate the XACC programming model within the C++ language by following a coprocessor machine model akin to the design of OpenCL or CUDA for GPUs. However, we take into account the subtleties and complexities inherent to the interplay between conventional and quantum processing hardware. The XACC framework provides a high-level API that enables applications to offload computational work represented as quantum kernels for execution on an attached quantum accelerator. Our approach is agnostic to the quantum programming language and the quantum processor hardware, which enables quantum programs to be ported to multiple processors for benchmarking, verification and validation, and performance studies. This includes a set of virtual numerical simulators as well as actual quantum processing units. The XACC programming model and its reference implementation may serve as a foundation for future HPC-ready applications, data structures, and libraries using conventional-quantum hybrid computing.
研究动机与目标
- 为解决将近期量子加速器集成到现有高性能计算(HPC)工作负载中的挑战。
- 设计一种可扩展、可移植的编程模型,为 HPC 开发者抽象量子硬件的复杂性。
- 在保持与多种量子处理器和模拟器互操作性的前提下,实现将量子内核无缝卸载到量子加速器。
- 支持在多个执行后端上对量子程序进行基准测试、验证和性能分析。
- 为未来在混合经典-量子计算中开发 HPC 就绪的库和数据结构奠定基础。
提出的方法
- 采用类似于 OpenCL 或 CUDA 的协处理器机器模型,XACC 允许 C++ 应用程序将量子计算卸载到专用的量子加速器。
- 该框架提供高级 API 以表达量子内核,抽象低级别的量子指令细节。
- XACC 的设计独立于量子编程语言和底层量子处理器架构。
- 它支持多种执行后端,包括虚拟数值模拟器和真实的量子处理单元。
- 该模型可实现量子程序在不同硬件平台之间的可移植性,用于测试和性能评估。
- 实现原生集成到 C++ 中,以确保与现有 HPC 软件栈和开发实践的兼容性。
实验结果
研究问题
- RQ1如何有效将量子加速集成到现有的高性能计算工作负载中?
- RQ2何种编程模型能够实现在多种量子硬件和模拟后端之间可移植且高效的量子内核卸载?
- RQ3如何设计一种高级的、与硬件无关的接口,以在 HPC 环境中抽象量子处理器的复杂性?
- RQ4统一的量子加速器接口在混合经典-量子工作负载中的性能和可移植性特征如何?
- RQ5单一编程模型能否同时支持在多个平台上对量子程序进行验证、确认和性能基准测试?
主要发现
- XACC 通过高级的、与硬件无关的 API,成功实现了从 C++ 应用程序向量子加速器卸载量子内核。
- 该框架支持在真实量子处理器和虚拟数值模拟器上执行,实现了可移植性和跨平台验证。
- 该模型在多种量子后端之间表现出互操作性,促进了基准测试和性能分析。
- 通过抽象量子硬件细节,XACC 降低了将量子加速集成到现有 HPC 工作流中的复杂性。
- 该设计为未来开发 HPC 就绪的混合量子-经典库和数据结构提供了支持。
- 该方法为近期量子 HPC 系统中可扩展、可移植且高性能的混合计算奠定了基础。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。