Skip to main content
QUICK REVIEW

[논문 리뷰] Extreme-Scale Programming Model for Quantum Acceleration within High Performance Computing

Alexander McCaskey, Eugene Dumitrescu|arXiv (Cornell University)|2017. 10. 04.
Quantum Computing Algorithms and Architecture참고 문헌 35인용 수 7
한 줄 요약

이 논문은 고성능 컴퓨팅(HPC) 워크로드 내에서 근접한 양자 가속을 가능하게 하는 C++ 기반의 초규모 가속기 프로그래밍 모델인 XACC을 소개한다. 이는 양자 커널을 양자 가속기로 오프로드하여 실현한다. 다양한 양자 프로세서와 시뮬레이터를 위한 하드웨어에 종속되지 않은 고수준 API를 제공하여 이식성 있고 성능이 우수한 하이브리드 양자-클래식 컴퓨팅 워크플로우를 가능하게 한다.

ABSTRACT

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는 양자 프로그래밍 언어나 기초 양자 프로세서 아키텍처에 종속되지 않도록 설계되어 있다.
  • 가상 수치 시뮬레이터와 실제 양자 처리 장치를 포함한 다양한 실행 백엔드를 지원한다.
  • 다양한 하드웨어 플랫폼 간의 양자 프로그램 이식성을 보장하여 테스트 및 성능 평가를 가능하게 한다.
  • 기존 HPC 소프트웨어 스택과 개발 관행과의 호환성을 확보하기 위해 C++에 네이티브로 통합되어 있다.

실험 결과

연구 질문

  • RQ1어떻게 기존 고성능 컴퓨팅 워크로드에 양자 가속을 효과적으로 통합할 수 있는가?
  • RQ2다양한 양자 하드웨어와 시뮬레이션 백엔드 간에 양자 커널을 이식성 있고 효율적으로 오프로드할 수 있는 프로그래밍 모델은 무엇인가?
  • RQ3HPC 환경에서 양자 프로세서의 복잡성을 추상화할 수 있는 고수준의 하드웨어에 종속되지 않은 인터페이스를 설계하는 데에는 어떤 방법이 필요한가?
  • RQ4하이브리드 클래식-양자 워크로드에서 통합된 양자 가속기 인터페이스의 성능 및 이식성 특성은 어떠한가?
  • RQ5단일 프로그래밍 모델이 다양한 플랫폼에서 양자 프로그램의 검증, 검증, 성능 벤치마킹을 동시에 지원할 수 있는가?

주요 결과

  • XACC는 고수준의 하드웨어에 종속되지 않은 API를 사용하여 C++ 애플리케이션에서 양자 커널을 양자 가속기로 오프로드하는 데 성공했다.
  • 프레임워크는 실제 양자 프로세서와 가상 수치 시뮬레이터 양쪽 모두에서 실행을 지원하여 이식성과 다중 플랫폼 검증을 가능하게 했다.
  • 다양한 양자 백엔드 간의 상호운용성이 입증되어 벤치마킹 및 성능 분석을 촉진했다.
  • 양자 하드웨어 세부 정보를 추상화함으로써 XACC는 기존 HPC 워크플로우에 양자 가속을 통합하는 데 복잡성을 감소시켰다.
  • 향후 HPC에 적합한 하이브리드 양자-클래식 라이브러리와 데이터 구조의 개발을 가능하게 하는 설계를 제공했다.
  • 이러한 접근은 근접한 양자 HPC 시스템에서 확장성 있고 이식성 있으며 성능이 뛰어난 하이브리드 컴퓨팅의 기반을 마련했다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.