TimeUnitConversion
class qiskit.transpiler.passes.TimeUnitConversion(*args, **kwargs)
Basi: TransformationPass
Scegliere un'unità di tempo da utilizzare nei passaggi successivi e rendere coerenti tutte le unità di tempo dei circuiti.
Questo passaggio aggiungerà un metadato Instruction.duration a ogni operazione di cui si conosce la durata, che sarà utilizzato dai successivi passaggi di pianificazione per la programmazione.
Se dt (in secondi) è noto a transpiler, viene scelta l'unità 'dt' . Altrimenti, l'unità da selezionare dipende dalle unità utilizzate nei ritardi e nelle durate delle istruzioni:
's': se sono tutti in unità SI.'dt': se sono tutti nell'unità'dt'.- errore: se si tratta di un mix di unità SI e
'dt'.
TimeUnitAnalysis inizializzatore.
Parametri
- inst_durations (InstructionDurations) – Un dizionario delle durate delle istruzioni.
- target - Il parametro
Targetche rappresenta il backend di destinazione; se sono specificati siainst_durationschetarget, questo argomento avrà la precedenza einst_durationssarà ignorato.
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)
Eseguire l'attività di ottimizzazione per l'IR Qiskit in ingresso.
Parametri
- passmanager_ir (DAGCircuit) – Qiskit IR da ottimizzare.
- state (DAGCircuit) – Stato associato all'esecuzione del flusso di lavoro da parte dello stesso gestore dei passaggi.
- callback (Callable[[Task, DAGCircuit, 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
name
run
run(dag)
Eseguire il passaggio TimeUnitAnalysis su dag.
Parametri
dag (DAGCircuit) – DAG da controllare.
Risultati
DAG con tempi coerenti e nodi op annotati con la durata.
Tipo di restituzione
Aumenti
TranspilerError – se le unità non sono unificabili
update_status
update_status(state, run_state)
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