quantumlib/qsim
Fast C++ and Python library for state-vector simulation of quantum circuits.
何を解決するか
qsim は量子回路用の高性能状態ベクトルシミュレータです。量子状態の時間発展をシミュレートするために、状態を複素数の振幅ベクトルとして表現し、行列-ベクトル乗算を適用して変換を模擬します。
動作方法
完全状態ベクトル(シュレーディンガー)シミュレータとして、qsim は量子ビット数 $n$ に対してすべての $2^n$ 個の振幅を計算します。高性能を実現するために、以下の最適化技術を採用しています:
- ゲート結合(Gate Fusion): 複数の量子ゲートを1つの操作に統合することで、処理回数を削減します。
- ハードウェア加速: ベクトル化に AVX/FMA 指令、並列処理に OpenMP、高速計算に GPU 対応を活用します。
- 精度: シミュレーション速度を向上させるために単精度演算を使用します。
対象ユーザー
C++ ライブラリを直接使用するユーザー、または qsimcirq インターフェースを通じて Python ユーザーとして量子回路をシミュレートしたいユーザーを対象としています。特に、Cirq フレームワークを用いてノイズのある中規模量子(NISQ)回路をモデル化しているユーザーに適しています。
特徴
- 高性能: CPU および GPU 上でのベクトル演算と並列処理に高度に最適化されています。
- Cirq 連携: Cirq で書かれた回路をシミュレートするための専用インターフェース(
qsimcirq)を備えています。 - 実績ある実績: Nature(2019年)に掲載された画期的な交差エントロピーベンチマーク結果の生成に使用されています。
- 柔軟な API: C++ ライブラリおよび Python パッケージの両方で利用可能です。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト