TimeUnitConversion
class qiskit.transpiler.passes.TimeUnitConversion(*args, **kwargs)
Bases: TransformationPass
Escolha uma unidade de tempo a ser usada nas seguintes passagens com reconhecimento de tempo e torne todas as unidades de tempo do circuito consistentes com essa unidade.
Essa passagem adicionará um metadado Instruction.duration a cada operação cuja duração é conhecida, que será usado pelas passagens de agendamento subsequentes para agendamento.
Se dt (em segundos) for conhecido pelo transpiler, a unidade 'dt' será escolhida. Caso contrário, a unidade a ser selecionada depende de quais unidades são usadas em atrasos e durações de instruções:
's'se todos estiverem em unidades SI.'dt': se todos estiverem na unidade'dt'.- levantar erro: se eles forem uma mistura de unidades SI e
'dt'.
TimeUnitAnalysis inicializador.
Parâmetros
- inst_durations (InstructionDurations) – Um dicionário de durações de instruções.
- target - O
Targetque representa o backend de destino; seinst_durationsetargetforem especificados, esse argumento terá precedência einst_durationsserá ignorado.
Atributos
is_analysis_pass
Verificar se o passe é um passe de análise.
Se a passagem for um AnalysisPass,, isso significa que a passagem pode analisar o DAG e escrever os resultados dessa análise no conjunto de propriedades. As modificações no DAG não são permitidas por esse tipo de passe.
is_transformation_pass
Verifique se o passe é um passe de transformação.
Se a passagem for um TransformationPass,, isso significa que a passagem pode manipular o DAG, mas não pode modificar o conjunto de propriedades (mas pode ser lido).
Métodos
execute
execute(passmanager_ir, state, callback=None)
Executar a tarefa de otimização para a entrada Qiskit IR.
Parâmetros
- passmanager_ir (Any) – Qiskit IR para otimizar.
- state (PassManagerState) – Estado associado à execução do fluxo de trabalho pelo próprio gerenciador de passes.
- callback (Callable | None) – Uma função de retorno de chamada que é chamada a cada execução da tarefa de otimização.
Retorna
Qiskit IR otimizado e estado do fluxo de trabalho.
Tipo de retorno
tupla [ Any, PassManagerState ]
name
run
run(dag)
Execute o passe TimeUnitAnalysis no dag.
Parâmetros
dag (DAGCircuit) – DAG a ser verificado.
Retorna
DAG com tempo consistente e nós operacionais anotados com duração.
Tipo de retorno
Aumentos
TranspilerError - se as unidades não forem unificáveis
update_status
update_status(state, run_state)
Atualizar o status do fluxo de trabalho.
Parâmetros
- state (PassManagerState) – Passar o estado do gerenciador para atualizar.
- run_state (RunState) – Status de conclusão da tarefa atual.
Retorna
Estado do gerenciador de passes atualizado.
Tipo de retorno