Skip to main content
QUICK REVIEW

[論文レビュー] An LLVM-based C++ Compiler Toolchain for Variational Hybrid Quantum-Classical Algorithms and Quantum Accelerators

Pradnya Khalate, Xin-Chuan Wu|arXiv (Cornell University)|Feb 22, 2022
Quantum Computing Algorithms and Architecture被引用数 13
ひとこと要約

本論文は、量子アクセラレータ上で変分ハイブリッド量子古典アルゴリズムをワンコンパイルで実行できるようにする、LLVMベースのC++コンパイラツールチェーンと量子言語拡張を提示する。C++に量子固有の構文を拡張し、新規の量子ELFフォーマットを統合し、最適化イテレーションの間で繰り返しコンパイルを回避するランタイム時の動的パラメータチューニングを可能にすることで、実行遅延を低減し、12量子ビットまで高精度なTFD状態生成を達成。MATLABベンチマークと強い一致を示した。

ABSTRACT

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.

研究の動機と目的

  • 異なるパラメータセットに対して繰り返し再コンパイルが発生する変分量子アルゴリズムにおける高いコンパイルオーバーヘッドを解消すること。
  • 量子コードと古典コードを1つのC++ソースファイルに統合し、統一されたコンパイルと実行を可能にする。
  • 再コンパイルなしで動的パラメータ更新をサポートすることで、ハイブリッド量子古典ワークロードの実行遅延を低減すること。
  • 将来の量子ハードウェアバックエンドとシミュレーションターゲットをサポートする、モジュラーかつ拡張可能なLLVMベースのコンパイラスタックを提供すること。
  • 物理的量子アクセラレータの代理として高性能な量子シミュレータを用いて、変分アルゴリズム(TFD状態準備)のエンドツーエンドのコンパイルと実行を実証すること。

提案手法

  • ホストコード内に直接量子回路と変分パラメータを記述できるように、C++に量子固有の構文と組み込み関数を拡張する。
  • コンパイル済みの量子カーネルと古典コードを併記できるように、新規の量子実行可能形式(ELF)を設計する。
  • LLVMフレームワーク内に量子デバイスコンパイラを統合し、量子アクセラレータをターゲットにしつつ、既存のホストコンパイラを古典C++コード用に再利用する。
  • 最適化イテレーションの間で異なるパラメータを有する量子回路を動的実行できる量子ランタイムライブラリを実装する。
  • LLVMのパスインfraストラクチャーやコード生成パイプラインを活用し、古典的および量子的コードコンponentの両方を最適化する。
  • Intel Quantum Simulatorをハードウェアの代理として用い、実世界の変分アルゴリズム(TFD状態準備)におけるフレームワークのパフォーマンスを評価する。

実験結果

リサーチクエスチョン

  • RQ1繰り返し再コンパイルが発生する従来の方法と比較して、ワンコンパイル方式が変分ハイブリッド量子古典アルゴリズムの実行遅延を顕著に低減できるか。
  • RQ2量子拡張を施したC++ベースのコンパイラツールチェーンが、再コンパイルなしで量子回路の動的パラメータチューニングをどの程度効果的にサポートできるか。
  • RQ3高精度なシミュレータを用いて量子アクセラレータをエミュレートする際、提案されたLLVMベースのフレームワークが、忠実度とパフォーマンスをどの程度維持できるか。
  • RQ4変分量子アルゴリズムにおける量子ビット数の増加に伴い、フレームワークのパフォーマンスはどのようにスケーリングするか。
  • RQ5ツールチェーンのモジュラー設計が、物理量子ビットデバイスや専用シミュレータを含む多様な量子ハードウェアバックエンドへの拡張をどの程度可能にするか。

主な発見

  • フレームワークにより、最適化イテレーションの間で繰り返しコンパイルが不要となり、変分アルゴリズムの実行遅延が顕著に低減された。
  • 12量子ビットまでにわたり、フルスタックシミュレーションと独立したMATLABベンチマーク(fminsearch関数を用いて)との間で、熱状態の忠実度に優れた一致が得られた。
  • 12量子ビットを超えるシステムサイズでは、MATLAB実装は著しく遅延が増加したが、Intelベースのツールチェーンはパフォーマンスを維持した。これにより、スケーラビリティの優位性が顕著になった。
  • 低温領域における系サイズの増加に伴い、TFD状態生成の忠実度は非単調な傾向を示したが、これは既知の物理的期待と整合的であった。
  • フレームワークのモジュラー設計により、将来的に量子ドットシミュレータや物理量子ビットデバイスの制御エレクトロニクスなど、物理的量子ハードウェアバックエンドへの拡張が可能である。
  • dlibライブラリのfind_min_bobyqa最適化器の使用により、変分最適化で効果的な収束が確認され、フレームワークが標準的な最適化パイプラインと互換性を持つことが裏付けられた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。