다중프로세서 실시간 시스템을 위한 EDF 시간 복잡도 감소 알고리즘
** 본 논문은 전역 EDF 스케줄링에서 발생하는 과도한 작업 마이그레이션과 높은 시간 복잡도를 줄이기 위해, 작업의 마감 기한과 실행 가능성을 사전에 검사하고 프로세서 친화성을 활용하는 Earliest Feasible Deadline First(EFDF) 알고리즘을 제안한다. EFDF는 작업을 두 집합(A·B)으로 구분하고, 우선순위가 높은 m개의 작업을 기존 프로세서에 고정시켜 마이그레이션을 최소화한다. 이 과정에서 삽입·검색 연산을 O…
저자: Jagbeer Singh
**
본 논문은 다중프로세서(real‑time multiprocessor) 환경에서 전역 Earliest Deadline First(EDF) 스케줄링이 갖는 두 가지 주요 문제, 즉 과도한 작업 마이그레이션과 높은 시간 복잡도를 해결하고자 한다. 기존 EDF는 모든 활성 작업을 하나의 우선순위 큐에 넣고, 매 스케줄링 시점마다 가장 마감 기한이 이른 작업을 선택한다. 이 방식은 구현이 간단하고 이론적으로 100 % 이용률까지 보장하지만, 다중프로세서에서는 작업이 빈번히 다른 프로세서로 이동하면서 캐시 미스와 통신 지연이 발생한다. 특히 클러스터와 같은 느린 네트워크 환경에서는 마이그레이션 비용이 전체 시스템 성능을 크게 저하시킨다.
이를 극복하기 위해 저자는 Earliest Feasible Deadline First(EFDF)라는 새로운 알고리즘을 제안한다. EFDF는 다음과 같은 핵심 아이디어를 포함한다.
1. **실현 가능성 검사(Feasibility Check)**
- 각 작업에 대해 현재 시점 t에서 남은 실행량 E_i(t)와 마감 기한 D_i(t)를 이용해 여유시간(Laxity) L_i(t)=D_i(t)−E_i(t)를 계산한다.
- L_i(t)≥0인 작업은 마감 기한을 만족할 가능성이 있으므로 집합 A에, L_i(t)<0인 작업은 집합 B에 배치한다. 이 단계는 Yao’s 알고리즘 등 기존의 실현 가능성 검증 기법을 차용한다.
2. **마감 기한 기반 정렬**
- 집합 A와 B 각각을 마감 기한 오름차순으로 정렬한다. 정렬 비용은 O(n log n)이며, 이는 전체 알고리즘에서 가장 무거운 연산이다.
3. **프로세서 친화성(Processor Affinity) 적용**
- 프로세서 j(1≤j≤m)에서 마지막으로 실행된 작업이 집합 A의 상위 min(k,m) 안에 있으면, 해당 작업을 그대로 j번 프로세서에 할당한다. 여기서 k는 집합 A의 크기, m은 프로세서 수이다.
- 이렇게 하면 마이그레이션이 발생하지 않아 캐시와 로컬 메모리의 재사용이 보장된다.
4. **빈 프로세서 채우기**
- 아직 할당되지 않은 프로세서에 대해, 집합 A에서 아직 할당되지 않은 가장 마감 기한이 이른 작업을 선택해 할당한다. k≥m이면 모든 프로세서가 작업을 갖게 되며, 알고리즘은 종료된다.
5. **불가능 작업 처리(선택적)**
- k
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기