A Modified Least-Laxity First Scheduling Algorithm for Reducing Context Switches on Multiprocessor Systems

다중 프로세서 시스템에서 문맥교환을 줄이기 위한 변형된 LLF 스케줄링 알고리즘

  • Published : 2003.02.01

Abstract

The Least-Laxity First(or LLF) scheduling algorithm assigns the highest priority to a task with the least laxity, and has been proved to be optimal for a uni-processor and sub-optimal for a multi-processor. However, this algorithm Is Impractical to implement because laxity tie results in the frequent context switches among tasks. In this paper, a Modified Least-Laxity First on Multiprocessor(or MLLF/MP) scheduling algorithm is proposed to solve this problem, i.e., laxity tie results in the excessive scheduling overheads. The MLLF/MP is based on the LLF, but allows the laxity inversion. MLLF/MP continues executing the current running task as far as other tasks do not miss their deadlines. Consequently, it avoids the frequent context switches. We prove that the MLLF/MP is also sub-optimal in multiprocessor systems. By simulation results, we show that the MLLF/MP has less scheduling overheads than LLF.

최소 여유시간 우선(Least-Laxity First, LLF) 스케줄링 알고리즘은 작은 여유시간을 가진 태스크가 높은 우선순위를 갖는 스케줄링 알고리즘으로써 단일 프로세서 시스템에서 최적이고 다중 프로세서 시스템에서 준최적으로 증명되었다. 그러나 이 스케줄링 알고리즘은 여유시간 충돌이 발생하였을 때 태스크 간에 빈번한 문맥교환이 발생하게 되는 문제점이 있어 실용적이지 못하다. 본 논문에서는 과도한 문맥교환을 일으키는 LLF의 문제점을 해결하기 위해 다중 프로세서 시스템을 위한 MLLF/MP(Modified Least-Laxity First on Multiprocessor) 스케줄링 알고리즘을 제안한다. MLLF/MP는 태스크의 여유시간 역전이 발생하더라도 마감시간을 놓치지 않는 범위에서 태스크를 연속적으로 수행시킴으로써 빈번한 문맥교환이 발생하는 것을 방지한다. MLLF/MP 또한 다중 프로세서 시스템에서 준최적임을 증명한다. 모의 실험 결과를 통하여 MLLF/MP는 LLF보다 적은 스케줄링 오버헤드를 가짐을 보인다.

Keywords

References

  1. M.L. Dertouzos and A.K. Mok, 'Multiprocessor On-Line Scheduling of Hard-Real-Time Tasks,' IEEE Transactions on Software Engineering, Vol. 15, No. 12, December 1989 https://doi.org/10.1109/32.58762
  2. A. K. Mok, 'Fundamental Design Problems of Distributed Systems for the Hard-Real-Time Environment,' Ph.D. Thesis, Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology, Cambridge, Massachusetts, May 1983
  3. C.L. Liu and J.W. Layland, 'Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment,' Journal of the Association for Computing Machinery, 20(1), 1973 https://doi.org/10.1145/321738.321743
  4. M.L. Dertouzos, 'Control Robotics: the Procedural Control of Physical Processes,' Information Processing 74, North-Holland Publishing Company, 1974
  5. 오성흔, 양승민, '실시간 시스템을 위한 최소 여유시간 우선 기반의 최소 선점을 갖는 스케줄링 알고리즘,' 한국정보과학회 논문지(A), 제26권, 제4호, pp.443-454, 1999년 4월
  6. 조성제, 이석균, 유해영, '산발적인 경성 실시간 태스크를 위한 온라인 스케줄링 알고리즘,' 한국정보과학회 논문지(A), 제25권, 제7호, pp. 708-718, 1998년 7월
  7. S.K. Dhall and C.L. Liu, 'On a Real-Time Scheduling Problem,' Operations Research, Vol. 26, No. 1, pp. 127-140, February 1978 https://doi.org/10.1287/opre.26.1.127
  8. Michael B. Jones, Joseph S. Barrera III, Alessandro Forin, Paul J. Leach, Daniela Rosu and Marcel-Catalin Rosu, 'An Overview of the Rialto Real-Time Architecture,' In Proceedings of the Seventh ACM SIGOPS European Workshop, Connemara, Ireland, pages 249-256, September, 1996
  9. Proceedings of the Seventh ACM SIGOPS European Workshop An Overview of the Rialto Real-Time Architecture Michael B. Jones;Joseph S. Barrera Ⅲ;Alessandro Forin;Paul J. Leach;Daniela Rosu;Marcel-Catalin Rosu