[논문 리뷰] An LLVM-based C++ Compiler Toolchain for Variational Hybrid Quantum-Classical Algorithms and Quantum Accelerators
이 논문은 양자 가속기에서 변이형 하이브리드 양자-고전 알고리즘을 단일 컴파일로 실행할 수 있도록 하는 LLVM 기반 C++ 컴파일러 도구체계를 제안한다. C++에 양자 전용 문법을 확장하고, 새로운 양자 ELF 포맷을 통합하며 런타임 시 동적 매개변수 조정을 지원함으로써, 최적화 반복 과정에서 반복적인 컴파일을 제거함으로써 실행 지연을 감소시켰으며, 강한 MATLAB 벤치마크와의 일치를 보이며 최대 12 큐비트까지 고정밀도 TFD 상태 생성을 달성하였다.
Variational algorithms are a representative class of quantum computing workloads that combine quantum and classical computing. This paper presents an LLVM-based C++ compiler toolchain to efficiently execute variational hybrid quantum-classical algorithms on a computational system in which the quantum device acts as an accelerator. We introduce a set of extensions to the C++ language for programming these algorithms. We define a novel Executable and Linking Format (ELF) for Quantum and create a quantum device compiler component in the LLVM framework to compile the quantum part of the C++ source and reuse the host compiler in the LLVM framework to compile the classical computing part of the C++ source. A variational algorithm runs a quantum circuit repeatedly, each time with different gate parameters. We add to the quantum runtime the capability to execute dynamically a quantum circuit with different parameters. Thus, programmers can call quantum routines the same way as classical routines. With these capabilities, a variational hybrid quantum-classical algorithm can be specified in a single-source code and only needs to be compiled once for all iterations. The single compilation significantly reduces the execution latency of variational algorithms. We evaluate the framework's performance by running quantum circuits that prepare Thermofield Double (TFD) states, a quantum-classical variational algorithm.
연구 동기 및 목표
- 다양한 매개변수 세트에 대해 반복적인 재컴파일이 발생하는 변이형 양자 알고리즘에서 발생하는 높은 컴파일 오버헤드를 해결하기 위해.
- 고전 코드와 양자 코드를 단일 C++ 소스 파일에 통합하여 컴파일 및 실행을 단일화하기 위해.
- 재컴파일 없이도 동적 매개변수 업데이트를 지원함으로써 하이브리드 양자-고전 워크로드의 런타임 지연을 감소시키기 위해.
- 미래의 양자 하드웨어 백엔드와 시뮬레이션 타겟을 지원하는 모듈러하고 확장 가능한 LLVM 기반 컴파일러 스택을 제공하기 위해.
- 실제 물리적 양자 가속기의 대체로 고성능 양자 시뮬레이터를 사용하여 변이형 알고리즘(TFD 상태 준비)의 엔드 투 엔드 컴파일 및 실행을 시연하기 위해.
제안 방법
- 호스트 코드 내에서 양자 회로와 변이형 매개변수를 직접 표현할 수 있도록 C++에 양자 전용 문법과 인트린식을 확장하기 위해.
- 컴pile된 양자 커널을 고전 코드와 함께 표현하기 위해 새로운 양자 실행 가능 및 연결 형식(ELF)을 설계하기 위해.
- 기존의 호스트 컴파일러를 활용하여 고전 C++ 코드를 처리하면서, LLVM 프레임워크 내부에 양자 장치 컴파일러를 통합하여 양자 가속기를 대상으로 하기 위해.
- 최적화 반복 과정에서 다양한 매개변수를 가진 양자 회로를 동적으로 실행할 수 있도록 양자 런타임 라이브러리를 구현하기 위해.
- 고전 및 양자 코드 컴ponent를 모두 최적화하기 위해 LLVM의 패스 인fra구조와 코드 생성 파이프라인을 활용하기 위해.
- 실제 변이형 알고리즘(TFD 상태 준비)에 대한 평가를 위해 인텔 양자 시뮬레이터를 하드웨어 프록시로 사용하기 위해.
실험 결과
연구 질문
- RQ1반복적인 재컴파일 대비 단일 컴파일 방식이 변이형 하이브리드 양자-고전 알고리즘의 실행 지연을 어떻게 크게 감소시킬 수 있는가?
- RQ2양자 확장 기능이 있는 C++ 기반 컴파일러 도구체계가 재컴파일 없이도 양자 회로의 동적 매개변수 조정을 얼마나 효과적으로 지원할 수 있는가?
- RQ3고정밀도 시뮬레이터를 통해 양자 가속기를 에뮬레이션할 때, 제안된 LLVM 기반 프레임워크가 정밀도와 성능을 얼마나 잘 유지하는가?
- RQ4변이형 양자 알고리즘에서 큐비트 수가 증가함에 따라 프레임워크의 성능은 어떻게 스케일링되는가?
- RQ5도구체계의 모듈러 설계는 물리적 큐비트 장치와 전용 시뮬레이터를 포함한 다양한 양자 하드웨어 백엔드를 지원하기 위해 어떻게 확장될 수 있는가?
주요 결과
- 프레임워크는 변이형 알고리즘의 단일 컴파일 실행을 가능하게 하여 최적화 반복 과정에서 반복적인 컴파일이 필요 없어지며, 실행 지연을 크게 감소시켰다.
- 전체 스택 시뮬레이션과 독립적인 MATLAB 벤치마크 간에 열린 상태의 정밀도(최대 12 큐비트)에서 뛰어난 일치를 보였다. 이는 fminsearch 함수를 사용한 결과였다.
- 12 큐비트를 초과하는 시스템 크기에서는 MATLAB 구현이 상당히 느려졌지만, 인텔 기반 도구체계는 성능 유지를 유지하여 확장성의 우수함을 입증하였다.
- 낮은 온도에서 시스템 크기가 증가함에 따라 TFD 상태 생성의 정밀도는 비단조화적인 경향을 보였으며, 알려진 물리적 기대와 일치하였다.
- 프레임워크의 모듈러 설계는 향후 물리적 큐비트 장치와 양자 도트 시뮬레이터, 물리적 큐비트 장치의 제어 전자 회로 등 다양한 양자 하드웨어 백엔드로의 확장 가능성을 제공한다.
- dlib 라이브러리의 find_min_bobyqa 최적화기 사용이 변이형 최적화에서 효과적인 수렴을 보였으며, 이는 프레임워크가 표준 최적화 파ip라인과의 호환성을 확보하고 있음을 확인시켰다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.