BasePassManager
class qiskit.passmanager.BasePassManager(tasks=(), max_iteration=1000)
패스 관리자 기본 클래스.
빈 패스 관리자 개체를 초기화합니다.
매개변수
- tasks (Task[IR, IR] | list[Task[IR, IR]]) – 패스 매니저 일정에 추가될 패스 세트.
- max_iteration (int) – 조건이 충족되지 않을 경우 일정이 반복되는 최대 횟수입니다.
메소드
append
append(tasks)
패스 일정에 작업을 추가합니다.
매개변수
tasks (Task[IR, IR] | list[Task[IR, IR]]) – 스케줄에 추가할 패스 관리자 작업 세트.
레이즈
TypeError – tasks의 요소 중 하나가 passmanager Task의 하위 클래스가 아닐 때 발생합니다.
리턴 유형
없음
remove
remove(index)
스케줄러에서 특정 패스를 제거합니다.
매개변수
index (int) – 에서 해당 위치에 따라 제거할 인덱스를 전달합니다 passes().
레이즈
PassManagerError – 인덱스를 찾을 수 없는 경우.
리턴 유형
없음
replace
replace(index, tasks)
스케줄러에서 특정 패스를 교체합니다.
매개변수
- index (int) – 다음의 위치에 따라 대체할 작업 인덱스
tasks() - tasks (Task[IR, IR] | list[Task[IR, IR]]) – 스케줄에 추가할 패스 관리자 작업 세트.
레이즈
- TypeError – tasks의 요소 중 하나가 passmanager Task의 하위 클래스가 아닐 때 발생합니다.
- PassManagerError – 인덱스를 찾을 수 없는 경우.
리턴 유형
없음
run
run(in_programs, callback=None, num_processes=None, *, property_set=None, **kwargs)
지정된 in_programs 에서 모든 패스를 실행합니다.
매개변수
-
in_programs (Any |list[Any]) – 등록된 모든 패스를 통해 변환할 입력 프로그램들. 단일 입력 객체는 Python 내장 리스트 객체일 수 없습니다. 목록 객체는 최적화 대상인 여러 입력 객체로 간주됩니다.
-
callback (Callable[[Task, IR, PropertySet, float, int], None] | 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()
이 관리자를 하나의 FlowControllerLinear로 선형화하여 다른 패스 관리자 안에 중첩할 수 있도록 합니다.
리턴
선형화된 패스 관리자.
리턴 유형
Flow[* ControllerLinearIR*, IR]