Skip to main content
IBM Quantum Platform

BasePassManager

class qiskit.passmanager.BasePassManager(tasks=(), max_iteration=1000)

GitHub

ベース: ABC

パスマネージャベースクラス。

空のパスマネージャオブジェクトを初期化します。

パラメーター

  • tasks (Task | list[Task]) – パスマネージャーのスケジュールに追加されるパスセット。
  • max_iteration (int) – 条件が満たされない場合、スケジュールがループされる最大反復回数。

方法

append

append(tasks)

GitHub

パスのスケジュールにタスクを追加する。

パラメーター

tasks (Task | list[Task]) – スケジュールに追加するパスマネージャーのタスク一式。

レイズ

TypeError - タスクの要素がパスマネージャ・タスクのサブクラスでない場合。

戻りの型

なし

remove

remove(index)

GitHub

スケジューラーの特定のパスを削除する。

パラメーター

index (int) – passes() の位置に基づいて、削除するインデックスを渡す。

レイズ

PassManagerError - インデックスが見つからない場合

戻りの型

なし

replace

replace(index, tasks)

GitHub

スケジューラーの特定のパスを置き換える。

パラメーター

  • index (int) – の位置に基づいて、置換するタスクインデックスを指定する。 tasks()
  • tasks (Task | list[Task]) – スケジュールに追加するパスマネージャーのタスク一式。

レイズ

  • TypeError - タスクの要素がパスマネージャ・タスクのサブクラスでない場合。
  • PassManagerError - インデックスが見つからない場合

戻りの型

なし

run

run(in_programs, callback=None, num_processes=None, *, property_set=None, **kwargs)

GitHub

指定された in_programs ですべてのパスを実行する。

パラメーター

  • in_programs (Any |list[Any]) – 登録済みの全パスを経由して変換するプログラムを入力する。 単一の入力オブジェクトは、 Python の組み込みリストオブジェクトであってはならない。 リストオブジェクトは、最適化対象として複数の入力オブジェクトと見なされる。

  • callback (Callable | None) –

    各パスの実行後に呼び出されるコールバック関数。 この関数は、5つのキーワード引数とともに呼び出されます:

    task (GenericPass): the pass being run
    passmanager_ir (Any): depending on pass manager subclass
    property_set (PropertySet): the property set
    running_time (float): the time to execute the pass
    count (int): the index for the pass execution

    渡される正確な引数は、パスマネージャーの内部構造を明らかにするものであり、パスマネージャーの内部構造が変更されると、これらは変更される可能性があります。 コールバック関数を複数のリリースにまたがって再利用する場合は、渡される引数が同じであることを必ず確認してください。

    コールバック機能を使うには、kwargs dictを受け取って変数にアクセスする関数を定義する。 例:

    def callback_func(**kwargs):
        task = kwargs['task']
        passmanager_ir = kwargs['passmanager_ir']
        property_set = kwargs['property_set']
        running_time = kwargs['running_time']
        count = kwargs['count']
        ...
  • num_processes (int | None) – 並列実行が有効な場合、起動する並列プロセスの最大数。 この引数は、ユーザー QISKIT_NUM_PROCS``num_processes 設定ファイル内の設定および環境変数を上書きします。 システムデフォルトまたはローカルユーザー設定 None が使用されます。

  • property_set (dict[str, object] | None) – 与えられた場合、パスマネージャーパイプラインの PropertySet として使用する初期値です。 これは、分析を共有しても安全であることが分かっている場合に、ある実行から別の実行へと分析を持続させるために使用することができる。 いくつかの解析は、入力回路に特有であることに注意すること。 Targetそのため、この引数を使用する際には十分な注意が必要である。

  • kwargs - コンパイラのフロントエンドとバックエンドに渡される任意の引数。

戻り値

変革されたプログラム(複数可)。

戻りの型

いずれ

to_flow_controller

to_flow_controller()

GitHub

このマネジャーをリニア化して FlowControllerLinear別のパス・マネージャーの中にネストできるようにする。

戻り値

線形化されたパス・マネージャー。

戻りの型

FlowControllerLinear

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