Skip to main content
IBM Quantum Platform

SetIOLatency

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

GitHub

Basi: AnalysisPass

Impostare le informazioni di IOLatency sul circuito di ingresso.

Le proprietà clbit_write_latency e conditional_latency vengono aggiunte all'insieme di proprietà di pass manager. Queste informazioni possono essere condivise tra i passaggi che eseguono lo scheduling delle istruzioni che agiscono sui registri classici.

Una volta aggiunte le latenze al set di proprietà, queste informazioni vengono copiate anche nell'oggetto circuito di uscita come attributi protetti, in modo da poter essere utilizzate al di fuori della transpilazione; ad esempio, la visualizzazione della timeline può utilizzare la latenza per mostrare con precisione il tempo occupato dalle istruzioni sui registri classici.

Creare un passaggio con informazioni sulla latenza.

Parametri

  • clbit_write_latency – Un vincolo di flusso di controllo. Poiché i processori quantistici superconduttori standard utilizzano una lettura QND dispersiva, il trasferimento effettivo dei dati al clbit avviene dopo che il segnale di stimolo, una volta completato il ciclo di andata e ritorno, è stato memorizzato temporaneamente e convertito nello stato quantistico. L'intervallo [t0, t0 + clbit_write_latency] è considerato come tempo di inattività per i clbit associati all'istruzione di misura. Il valore predefinito è 0 dt, identico a quello dello scheduler di Qiskit Pulse.
  • conditional_latency – Un vincolo relativo al flusso di controllo. Questo valore rappresenta la latenza della lettura di un registro classico per l'operazione condizionale. L'azionamento del cancello avviene dopo questo intervallo di tempo. Ciò si traduce in un ritardo davanti all' DAGOpNode e del cancello. Il valore predefinito è 0 dt.

Attributi

is_analysis_pass

Controlla se il passaggio è un passaggio di analisi.

Se il passo è un AnalysisPass,, significa che il passo può analizzare il DAG e scrivere i risultati di tale analisi nel set di proprietà. Questo tipo di passaggio non consente di modificare il DAG.

is_transformation_pass

Controlla se il passaggio è un passaggio di trasformazione.

Se il passaggio è un TransformationPass,, significa che il passaggio può manipolare il DAG, ma non può modificare il set di proprietà (ma può essere letto).


Metodi

execute

execute(passmanager_ir, state, callback=None)

GitHub

Eseguire l'attività di ottimizzazione per l'IR Qiskit in ingresso.

Parametri

  • passmanager_ir (IR) – Qiskit IR da ottimizzare.
  • state (PassManagerState) – Stato associato all'esecuzione del flusso di lavoro da parte del gestore del passaggio stesso.
  • callback (Callable[[Task, IR_OUT, PropertySet, float, int], None] | None) – Una funzione di callback che viene chiamata ad ogni esecuzione di un'attività di ottimizzazione.

Risultati

Qiskit IR ottimizzato e stato del flusso di lavoro.

Tipo di restituzione

tupla [ IR_OUT, PassManagerState ]

name

name()

GitHub

Nome del passo.

Tipo di restituzione

STR

run

run(dag)

GitHub

Aggiungere informazioni sulla latenza dell'IO.

Parametri

dag (DAGCircuit) – Circuito DAG di ingresso.

update_status

update_status(state, run_state)

GitHub

Aggiornare lo stato del flusso di lavoro.

Parametri

  • state (PassManagerState) – Passare lo stato del gestore da aggiornare.
  • run_state (RunState) – Stato di completamento dell'attività corrente.

Risultati

Stato aggiornato del gestore dei passaggi.

Tipo di restituzione

PassManagerState

Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.