ATHENA:分散量子コンピュータのテレポーテーション回数と応答時間を減らすコンパイラ
この論文は、チップ間を光でつなぐ分散量子コンピュータ(DQC)で生じる「テレポーテーション」の負担を減らすコンパイラ設計を扱います。DQCでは、異なるチップ上の量子ビット間でCNOTと呼ばれる二量子ビット操作を行う際にテレポーテーションで状態を移動します。しかし、こうした非局所CNOTはチップ内のローカルCNOTに比べて4.3〜7.7倍時間がかかり、誤り率も約4倍高いと報告されています。テレポーテーションの回数や待ち時間が増えるとプログラムの忠実度と速さが大きく劣化します。
従来のDQCコンパイラは、CNOTを「ブロック」にまとめて各ブロック内のテレポーテーション経路を最適化します。しかし二つの問題があります。第一に、ブロック単位で順に最適化してしまうため、あるブロックで選んだ移動が将来のブロックにどう影響するかを十分に見通せません。例として、既存手法QuCommがある見通し窓で最適化しても、テレポーテーション回数が最適値にならないことが示されています。特にQAOAというベンチマークでは57K個のCNOTが17Kブロックに分かれ、同一量子ビットの連続した移動は平均で約260CNOT分、ブロックにすると約89ブロック離れて発生するため、短い先読みでは不十分になります。第二に、将来の操作やそれに必要なテレポーテーションを前もってスケジュールしないため、処理が遅れやすく、実際に45.4%のテレポーテーションが平均7.5ms待たされたという観察も報告されています。
提案手法のATHENAは、これらの欠点を二つの新しい考えで解決します。第一は「ユーティリティ駆動の先読みと複数候補スケジューリング(UMS)」。UMSは、すべての将来ブロックを見るのではなく、現在のブロックと量子ビットを共有する「有用な」未来ブロックだけを先読みします。さらに、あるブロックを一つのスケジュールで決め切らず、複数の候補スケジュールを保持して枝分かれさせ、後で状況に応じて最良を選べるようにします。候補が爆発的に増えないよう、最終的に上位w件のみを残して計算量を抑えます。第二は「EPR容量を考慮した早期スケジューリング(EES)」。EPRとはテレポーテーションに使う対となる量子ビットで、チップ上に同時に置ける外部ビット数がEPR容量です。EESは、データ依存が解かれた将来の操作とそれに必要な移動を、EPRに余裕があるときに早めに計画・実行します。ただし、早期にEPRを使い切ると中間の操作で逆にコストが増えるため、ATHENAは早期実行が全体のテレポーテーションを増やさないかをチェックしてから進めます。
評価では、ATHENAが代表的なベンチマークとDQCアーキテクチャで比較され、テレポーテーション回数を平均で34%(最大65%)減らし、遅延(レイテンシ)を平均で2倍(最大2.9倍)改善したと報告されています。コンパイラは候補スケジュールを保持して木構造で解を作り、各非局所CNOTについて移動コストを最小化する経路を選びます。実装は複雑さを抑えるために枝刈りを行う設計になっています。ATHENAはGitHubで入手可能と記載されています。
重要な注意点もあります。論文抜粋は本文の一部であり、評価は「代表的なベンチマークとDQCアーキテクチャ」に基づくとありますが、すべての実装やハードウェア条件で同じ効果が出るとは限りません。早期スケジューリングはEPRの分配を変え、局所的にコストが増えるリスクがあるため、ATHENAはその影響を検査してから予定を進める仕組みを導入しています。実運用では、EPR容量やチップ接続のトポロジー、プログラムの特徴によって効果が変わる点に注意が必要です。