Skip to main content
IBM Quantum Platform

SetIOLatency

class qiskit.transpiler.passes.SetIOLatency(*args, **kwargs)

GitHub

ベース: AnalysisPass

入力回路にIOLatency情報を設定する。

clbit_write_latencyconditional_latency がパスマネージャーのプロパティセットに追加される。 この情報は、古典レジスタに作用する命令のスケジューリングを行うパス間で共有できる。

これらのレイテンシがプロパティセットに追加されると、この情報は保護された属性として出力回路オブジェクトにもコピーされ、トランスピレーションの外部で利用できるようになる。例えば、タイムラインの視覚化では、レイテンシを使用して、古典的なレジスタ上の命令による時間占有を正確に示すことができる。

レイテンシー情報を持つパスを作成する。

パラメーター

  • clbit_write_latency – 制御フロー制約。 標準的な超伝導量子プロセッサは分散型QND読み出しを採用しているため、clbitへの実際のデータ転送は、往復した刺激信号がバッファリングされ、量子状態として識別された後に実行される。 この間隔は、その計測命令に関連付けられた [t0, t0 + clbit_write_latency] clbitsのアイドル時間と見なされる。 デフォルト値は 0 dt であり、これは Qiskit Pulse スケジューラと同じです。
  • conditional_latency – 制御フローの制約。 この値は、条件付き演算における従来のレジスタの読み取りにかかるレイテンシを表します。 このレイテンシが経過した後にゲートの動作が行われます。 これは、ゲートの DAGOpNode の前で遅延として現れます。 デフォルト値は 0 dt です。

属性

is_analysis_pass

パスが分析パスかどうかをチェックする。

パスが AnalysisPass,、パスがDAGを分析し、その分析結果をプロパティセットに書き込むことができることを意味する。 この種のパスでは、DAGの変更は許されない。

is_transformation_pass

パスが変形パスかどうかをチェックする。

パスが TransformationPass, の場合、そのパスはDAGを操作することはできるが、プロパティセットを変更することはできない(ただし、読み取ることはできる)ことを意味する。


方法

execute

execute(passmanager_ir, state, callback=None)

GitHub

入力Qiskit IRに対して最適化タスクを実行する。

パラメーター

  • passmanager_ir (Any) – Qiskit IRを最適化する。
  • state (PassManagerState) – パスマネージャー自身によるワークフロー実行に関連する状態。
  • callback (Callable | None) – 最適化タスクの実行ごとに呼び出されるコールバック関数。

戻り値

Qiskit IRとワークフローの状態を最適化。

戻りの型

タプル [ Any, PassManagerState ]

name

name()

GitHub

パスの名前

戻りの型

str

run

run(dag)

GitHub

IOレイテンシ情報を追加する。

パラメーター

dag (DAGCircuit) – 入力DAG回路。

update_status

update_status(state, run_state)

GitHub

ワークフローのステータスを更新する。

パラメーター

  • state (PassManagerState) – 更新するマネージャーの状態を渡す。
  • run_state (RunState) – 現在のタスクの完了状況。

戻り値

パスマネージャーの状態を更新。

戻りの型

PassManagerState

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