Skip to main content
IBM Quantum Platform

ジョブの制限

IBM® のQPUにジョブを送信すると、まずそのジョブがQPU上で実行可能かどうかが検証されます。これは、キューを通過するのを待った後にジョブが失敗する可能性を減らすためです。 これらのチェックには、以下に説明する制限の適用が含まれます。 これらの制限値を超えると、そのワークロードは量子ソフトウェアスタックで処理できなくなり、通常は失敗します。

ノート
  • 特定のプリミティブ・オプションは、回路サイズを大きくする。 記載された限界値は、予想される回路規模の増大後にチェックされる。 特に、これらのオプションは回路サイズを大きくする:
  • backend.configuration() フィールド max_shotsmax_experiments によって報告された制限は、もはや関連性がなく、強制もされない。 これらのフィールドは近い将来削除される予定である。
  • これらの制限はジョブ単位であり、プリミティブ統一ブロック単位ではありません( PUB )。

最大実行回数

出力サイズの関係上、Samplerジョブの実行回数は最大1, 000万回までと制限されています。 実行回数は、周回数にショット数を掛けた値であり、ここでいう周回数とは、 PUB 要素がブロードキャストされた後に生成される周回数を指します。

例えば、1つの回路を持つ と形状 (4, 1) PUB のパラメータがある場合、これは4つの回路をレンダリングします。 2,000回のショットを要求した場合、実行の総数は. です 4×2,000=8,0004 \times 2,000 = 8,000

注意:Samplerジョブでパウリ回転を有効にした場合、ショットの総数は および shots_per_randomization num_randomizations の値に基づきます。 詳細は をご覧ください TwirlingOptions


量子ビットあたりの低レベル命令の最大数

本サービスは**、量子ビットあたり**最大 26.8 百万回の制御システム命令を許可します。 これにより、ユーザー回路が制御システムの命令メモリ内に収まることが保証される。 以下の例は、回路をトランスパイルし、各命令の数をカウントする方法を示しています。

以下の表は、この限界値を計算する際に、システムが命令セットアーキテクチャ(ISA)回路命令を制御システム命令にどのように変換するかを説明しています。

方法
rz`1
delay1
sx2
x2
cx5
cz5
ecr5
measure10
reset17
init50
Note

この表は、検証で使用されたヒューリスティックを捉えたものであり、演算の実装に使用される正確な命令数を反映したものではない。

回路を定義し、トランスパイルし、実行されるゲートの数をカウントする。

from qiskit import QuantumCircuit
from qiskit.transpiler import generate_preset_pass_manager
from qiskit_ibm_runtime import QiskitRuntimeService

num_qubits = 50
ghz = QuantumCircuit(num_qubits)
ghz.h(range(num_qubits))
ghz.cx(0, range(1, num_qubits))
op_counts = ghz.count_ops()

# Choose the least busy backend
service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)

pm = generate_preset_pass_manager(optimization_level=3, backend=backend)
transpiled_ghz = pm.run(ghz)
op_counts = transpiled_ghz.count_ops()

print(f"Post-Transpilation gates: {op_counts}")

詳細については、 カスタムバックエンドに対するTranspileを参照してください。


回路あたりの単一量子ビットおよび二量子ビットゲートの上限数

単一量子ビットのゲートの最大数は以下の通り:

  • 3000万RZゲート
  • 2000万SXゲート

回路あたりの2量子ビットゲートの最大数は500万である。 これにより、ジョブが低レベル・ソフトウェア・スタックのメモリ制限内で操作できることが保証される。

このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。