[논문 리뷰] Reallocation Problems in Scheduling
이 논문은 다중프로세서 환경에서 단위 길이 작업의 시간 창이 있는 동적 스케줄링 알고리즘을 제안하며, 작업이 삽입되거나 삭제될 때 재할당 비용을 최소화한다. 계층적 예약 시스템을 사용하고 창 조정과 분할된 재빌드를 통해, 각 연산당 $O(\min\{\log^{*}n, \log^{*}\Delta\})$의 재할당을 달성한다. 여기서 $n$은 활성 작업 수이고 $\Delta$는 최대 창 크기이다.
In traditional on-line problems, such as scheduling, requests arrive over time, demanding available resources. As each request arrives, some resources may have to be irrevocably committed to servicing that request. In many situations, however, it may be possible or even necessary to reallocate previously allocated resources in order to satisfy a new request. This reallocation has a cost. This paper shows how to service the requests while minimizing the reallocation cost. We focus on the classic problem of scheduling jobs on a multiprocessor system. Each unit-size job has a time window in which it can be executed. Jobs are dynamically added and removed from the system. We provide an algorithm that maintains a valid schedule, as long as a sufficiently feasible schedule exists. The algorithm reschedules only a total number of O(min{log^* n, log^* Delta}) jobs for each job that is inserted or deleted from the system, where n is the number of active jobs and Delta is the size of the largest window.
연구 동기 및 목표
- 동적이고 온라인 환경에서 시간 창이 있는 작업을 스케줄링할 때 재할당 비용을 최소화하는 데 도전하는 것.
- 이전에 할당된 작업의 재스케줄링을 허용하면서도 이러한 변경의 비용을 낮게 유지하는 스케줄링 시스템을 설계하는 것.
- 작업이 삽입되거나 제거됨에 따라 항상 타당한 스케줄을 유지하기 위해 스케줄의 여유를 활용하는 것.
- 계층적 스케줄링과 창 조정을 통해 효율적인 분할 및 분할되지 않은 성능 보장을 달성하는 것.
- 작업 중심의 재할당 비용 모델을 도입하여 기존의 강건성 및 증분 스케줄링 결과를 통합하고 일반화하는 것.
제안 방법
- 각 수준이 지수적으로 증가하는 크기의 시간 간격을 관리하는 다중 수준에서의 계층적 예약을 갖는 '계층적 우선순위 스케줄러'를 사용한다.
- 모든 작업 창에 충분한 사용 가능한 슬롯이 확보되어 있음을 보장하기 위해 '이행된 예약' 개념을 사용하며, 이를 통해 Invariant 4.9에 의해 타당성이 보장된다.
- 창 조정을 적용하여 작업 시간 창의 크기를 $2\gamma n^*$ 이내로 제한함으로써 $\gamma$-부족할당을 유지한다. 여기서 $n^*$는 활성 작업 수의 동적 추정치이다.
- 기존 스케줄과 새로운 스케줄 간에 번갈아가며 시간 슬롯을 사용하여 작업을 점진적으로 이관함으로써 재빌드 과정을 분할하여, 각 연산당 $O(1)$의 분할된 비용을 확보한다.
- 계층의 수준 수를 유한하게 유지하기 위해 $n^*$를 두 배로 늘리고 반으로 줄이는 전략을 유지함으로써, $n$과 $\Delta$에 대해 로그 수준의 깊이를 확보한다.
- 계층의 수준 수를 제한하기 위해 $\log^*$ 함수를 사용하며, $\log^*$의 느린 증가 성질을 활용하여 각 연산당 거의 상수 수준의 재할당 비용을 달성한다.
실험 결과
연구 질문
- RQ1작업이 삽입되거나 삭제될 때 조건부로 발생하는 연쇄적 재스케줄링 영향이 존재하더라도, 재할당 비용을 최소화하는 동적 스케줄링 알고리즘을 설계할 수 있는가?
- RQ2시간 창이 있는 동적 작업 스케줄링 시스템에서 타당한 스케줄을 유지하기 위한 재할당 비용의 이론적 하한은 무엇인가?
- RQ3높은 최악의 경우 비용을 유발하지 않으면서도, 재할당 기반 스케줄링에서 효율적인 분할 및 분할되지 않은 성능을 달성할 수 있는가?
- RQ4스케줄의 여유를 얼마나 잘 활용할 수 있는가? 이를 통해 재스케줄링 연쇄 현상을 줄이고, 각 연산당 이동하는 작업 수를 줄일 수 있는가?
- RQ5작업 중심의 재할당 비용 모델은 기존의 온라인 및 강건 스케줄링 결과를 통합하고 향상시킬 수 있는가?
주요 결과
- 제안된 알고리즘은 각 삽입 또는 삭제가 최대 $O(\min\{\log^{*}n, \log^{*}\Delta\})$의 재할당을 유발함을 보장한다. 여기서 $n$은 활성 작업 수이고 $\Delta$는 최대 작업 창 크기이다.
- 계층적 예약 시스템을 사용함으로써, 동적 업데이트 후에도 모든 작업 창에 최소한 하나의 사용 가능한 슬롯이 확보되어 타당성이 유지된다.
- 크기가 $2\gamma n^*$로 제한된 창 조정은 $\gamma$-부족할당을 유지하며, 계층의 수준 수를 $O(\log^{*}(4\gamma n))$ 이내로 제한할 수 있다.
- 기존 스케줄과 새로운 스케줄을 번갈아 사용하는 시간 슬롯을 통해 점진적 재빌드를 수행함으로써 분할된 재빌드가 달성되며, 각 연산당 $O(1)$의 분할된 비용을 확보한다.
- 입력 인스턴스가 충분히 부족할당되어 있다고 가정할 경우, 알고리즘이 최적의 재할당 비용 상한을 달성하며, 이 상한은 역 애커만 함수의 반복 로그에만 의존한다.
- 먼저 창을 정렬하고 조정함으로써 비정렬 작업으로의 일반화가 가능하며, 이 과정에서 부족할당 성질이 상수 요인 내에서 유지되어, 다중 머신 시스템으로의 확장이 가능하다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.