Skip to main content
IBM Quantum Platform

DoWhileController

class qiskit.passmanager.DoWhileController(tasks=(), do_while=None, *, options=None)

GitHub

Basen: BaseController[IR, IR]

Führen Sie die angegebenen Aufgaben in einer Schleife aus, bis die Bedingung do_while für den Eigenschaftssatz False lautet.

Die angegebenen Aufgaben werden immer mindestens einmal ausgeführt, und bei jeder Iteration der Schleife werden alle Aufgaben ausgeführt (es sei denn, es wird ein Fehlerzustand gesetzt). Diese Fernbedienung verfügt über denselben IR-Ein- und Ausgang.

Erstellen Sie einen neuen Flow Controller.

Parameter

  • options (dict[str, Any] | None) – Option für diesen Durchflussregler.
  • tasks (Task[IR, IR] | Iterable[Task[Any, Any]])
  • do_while (Callable[[PropertySet], bool] | None)

Attribute

passes

Alias von Aufgaben aus Gründen der Abwärtskompatibilität.


Methoden

execute

execute(passmanager_ir, state, callback=None)

GitHub

Ausführen der Optimierungsaufgabe für die Eingabe Qiskit IR.

Parameter

  • passmanager_ir (IR) – Qiskit IR zur Optimierung.
  • state (PassManagerState) – Status, der mit der Ausführung des Workflows durch den Passmanager selbst verbunden ist.
  • callback (Callable | None) – Eine Callback-Funktion, die bei jeder Ausführung der Optimierungsaufgabe aufgerufen wird.

Rückgabe

Optimierte Qiskit IR und Stand des Workflows.

Rückgabetyp

Tupel [ IR_OUT, PassManagerState ]

iter_tasks

iter_tasks(state)

GitHub

Eine benutzerdefinierte Logik zur Auswahl der nächsten auszuführenden Aufgabe.

Die Controller-Unterklasse kann den Zustand nutzen, um eine geeignete Task-Pipeline aufzubauen. Der aktualisierte Zustand nach der Ausführung einer Aufgabe wird als "Rückgabewert" aller yield Anweisungen zurückgegeben. Dies bedeutet, dass die Reihenfolge der Aufgabenausführung erst zur Laufzeit festgelegt wird. Diese Methode darf das angegebene Zustandsobjekt nicht verändern.

Parameter

  • state (PassManagerState) – Der Zustand des Passmanager-Workflows zu Beginn der Ausführung dieses Ablaufsteuerers.
  • state - der Zustand des Pass Managers nach der Ausführung der letzten Aufgabe, die abgegeben wurde. Der Generator braucht dies nicht zu prüfen, wenn es für seine Logik irrelevant ist, und es auch nicht zu aktualisieren.

Ergiebigkeit

Aufgabe - Nächste auszuführende Aufgabe.

Rückgabetyp

Generator [ Task [ Any, Any ], PassManagerState, None]

War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.