주 콘텐츠로 건너뛰기

공정 분배 스케줄러

워크로드를 양자 처리 장치(QPU)에 제출하면, 해당 QPU의 스케줄러에 진입하여 해당 QPU에서 실행을 기다리는 (모든 사용자로부터의) 워크로드 풀에 합류합니다. 이러한 워크로드가 실행되는 순서는 기본적으로 공정 분배 공식에 의해 결정됩니다. 아래에서 설명하는 바와 같이, 이 공식은 주어진 시간 창 내에서 할당된 QPU 접근량에 따라 서로 다른 인스턴스 간의 워크로드를 균형 있게 조정하려고 합니다. 실제로는 다양한 인스턴스의 워크로드가 서로 뒤섞여서 워크로드가 완료되는 순서가 반드시 제출된 순서와 일치하지 않을 수 있습니다. 새로운 워크로드가 도착함에 따라 순서가 동적으로 계산되기 때문에, 공정 분배 스케줄러에서 워크로드가 언제 실행될지 일반적으로 보장하기 어렵습니다.

공정 분배 용어

  • 계정(Account): 개인 및 조직은 IBM Cloud® 계정을 사용하여 IBM Quantum® Platform 및 Qiskit Runtime에 접근합니다.

  • 인스턴스(Instance): 상위 계정에서 일련의 QPU로 시간이 할당되고 사용자가 직접 배정되는 기본 수준의 구성 요소입니다. 인스턴스는 특정 지역 및 플랜에 연결되어 있습니다. 자세한 내용은 인스턴스 가이드를 참고하세요.

  • 28일 롤링 창(28-day rolling window): 공정 분배 스케줄러는 롤링 시간 창에 걸친 사용량을 고려합니다. 공정성을 위해 해당 창 내에서 누적된 실행 시간만 반영됩니다. 해당 창의 길이는 현재 28일입니다. 공정 분배 스케줄러가 호출될 때 28일 전부터의 사용량을 고려합니다. (참고: 롤링 시간 창은 Flex Plan에는 적용되지 않습니다. Flex Plan의 공정 분배 비율은 총 사용량 대 할당량입니다.)

  • 사용 시간(Time used): 모든 인스턴스에 대해 28일 롤링 창 동안 모든 QPU에서의 사용량이 집계됩니다. 여기에는 성공적인 워크로드와 알려진 특정 오류 코드를 반환하는 워크로드가 모두 포함됩니다. (참고: 롤링 시간 창은 Flex Plan에는 적용되지 않습니다. Flex Plan의 공정 분배 비율은 총 사용량 대 할당량입니다.)

할당 및 관리

IBM®은 각 조직의 IBM Cloud 계정에 해당 플랜에 따라 계약된 용량을 기반으로 양자 컴퓨팅 용량의 할당을 배정합니다. 계정 관리자는 이 할당량에서 각 인스턴스에 할당할 부분을 결정합니다. 공정 분배 스케줄러는 인스턴스의 할당량과 현재 사용량을 사용하여 각 인스턴스에 공정하게 리소스를 분배하는 방식으로 워크로드를 스케줄링합니다.

예를 들어, 두 개의 인스턴스만 하나의 양자 컴퓨터 큐에 워크로드를 유지하는 경우를 가정해 보겠습니다. 다른 조건이 동일하다면, 두 배의 분(minute)을 가진 인스턴스는 두 배의 워크로드를 실행할 수 있습니다.

조직 계정이 엔터프라이즈 계정인 경우, 계정 관리자는 먼저 할당량을 해당 계정의 하위 계정에 배분해야 하며, 하위 계정의 관리자는 할당량의 해당 부분을 하위 계정의 인스턴스에 배분합니다.

공정 분배 스케줄러의 작동 방식

공정 분배 스케줄러는 어떤 인스턴스도 QPU를 독점할 수 없도록 동적인 순서로 QPU에서 실행할 워크로드를 선택합니다. QPU가 추가 작업을 받을 준비가 되면, 공정 분배 스케줄러에 다음 워크로드를 요청합니다. 스케줄러의 기본 동작은 현재 스케줄링 창 내에서 할당량 대비 사용량이 가장 적은 인스턴스를 먼저 식별하여 다음 워크로드를 선택하는 것입니다. 선택된 인스턴스가 하나 이상의 워크로드를 제출한 경우, 스케줄러는 가장 오래된 워크로드를 먼저 선택합니다. 따라서 인스턴스 내에서 스케줄러는 선입선출(FIFO) 방식으로 작동합니다.

다음 단계

권장 사항