On the design and implementation of a shared memory dispatcher for partially clairvoyant schedulers

被引:0
|
作者
Subramani, K. [1 ]
Yellajyosula, Kiran [2 ]
机构
[1] W Virginia Univ, LCSEE, Morgantown, WV 26506 USA
[2] Univ Minnesota, CSE, Minneapolis, MN USA
关键词
partially clairvoyant dispatcher; shared-memory; real-time scheduling; loss of dispatchability; safety interval;
D O I
10.1007/s10766-007-0061-2
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
With the onset of distributed computing in hard real-time applications, the problem of assigning to, scheduling in, and executing jobs on processors, has received a lot of attention. Usually, real-time systems are embedded in closed loop reactive environments with uncertain behaviors and such systems take varying times to respond to such stimuli. One of the fundamental features of such systems is the presence of complex timing constraints between pairs of jobs. A secondary feature is the non-constant nature of the execution times of jobs. Real-time operating systems such as MARUTI can measure the interval within which the execution time varies (Mosse et al. In: Second IEEE Workshop on Experimental Distributed System, pp. 29-34., IEEE, 1990; Levi et al. 1989, ACM Special Interest Group Operat Syst 23(3):90-106). Partially clairvoyant scheduling was introduced in (Saksena, Parametric Scheduling in Hard Real-Time Systems. PhD thesis, University of Maryland, College Park, June 1994) to schedule jobs with varying execution times and non-trivial timing constraints. The schedulability of the job set is determined offline and a set of dispatch functions are produced from the given set of constraints if the job set is schedulable. The dispatch functions bind the start time of a job J to an interval that depends on the start and execution times of jobs sequenced before J. The online dispatcher of the system reads these dispatch functions and computes the interval within which a job can start without violating the constraints imposed on the system. In certain situations, the dispatcher fails to dispatch a job as the time to compute the dispatch functions associated with a job is greater than the interval within which the job needs to be dispatched. This phenomenon is called Loss of Dispatchability (Subramani, Duality in the Parametric Polytope and its Applications to a Scheduling Problem. PhD thesis, University of Maryland, College Park, August 2000). In this paper, we propose and implement a partially clairvoyant dispatching algorithm on a shared memory cluster with Concurrent Read Exclusive Write (CREW) architecture and contrast it with the sequential approach. For a preset number of processors, our approach has O(1) dispatch complexity while using a total of O(n(2)) space, while the sequential approach requires Omega(n) time. The detailed implementation profile obtained clearly demonstrates the superiority of the multiprocessor approach to dispatching. We also address the issue of scalability of the dispatcher for increasing number of processors and show that job sets of different sizes require different number of processors. Finally, we demonstrate the effect of execution time on the dispatchability of schedules.
引用
收藏
页码:386 / 411
页数:26
相关论文
共 50 条
  • [21] Design and implementation of near-memory computing array architecture based on shared buffer
    Shan R.
    Gao X.
    Feng Y.
    Hui C.
    Cui X.
    Chai M.
    High Technology Letters, 2022, 28 (04) : 345 - 353
  • [22] DESIGN OF THE SHARED MEMORY SYSTEM FOR MULTIPROCESSOR LISP MACHINES AND ITS IMPLEMENTATION ON THE EVLIS MACHINE
    YASUI, H
    SAKAGUCHI, T
    KUDO, K
    HIRONISHI, N
    LECTURE NOTES IN COMPUTER SCIENCE, 1990, 441 : 348 - 352
  • [23] DESIGN AND IMPLEMENTATION OF MOONY - A FAULT-TOLERANT DISTRIBUTED SHARED-MEMORY SYSTEM
    LIN, YW
    YUAN, SM
    LIANG, DR
    COMPUTER SYSTEMS SCIENCE AND ENGINEERING, 1995, 10 (02): : 111 - 119
  • [24] Design and Implementation of Inter-core Communication of Embedded Multiprocessor Based on Shared Memory
    Nie, Yang
    Jing, Lili
    Zhao, Pengyu
    INTERNATIONAL JOURNAL OF SECURITY AND ITS APPLICATIONS, 2016, 10 (12): : 21 - 30
  • [25] Design and implementation of near-memory computing array architecture based on shared buffer
    山蕊
    GAO Xu
    FENG Yani
    HUI Chao
    CUI Xinyue
    CHAI Miaomiao
    High Technology Letters, 2022, 28 (04) : 345 - 353
  • [26] The design and implementation of real-time schedulers in RED-Linux
    Lin, KJ
    Wang, YC
    PROCEEDINGS OF THE IEEE, 2003, 91 (07) : 1114 - 1130
  • [27] Implementation of software distributed shared memory in Linux
    Software Engineering Institute, Beijing University of Aeronautics and Astronautics, Beijing 100083, China
    Jisuanji Gongcheng, 2006, 4 (58-60):
  • [28] PARALLEL HASHING - AN EFFICIENT IMPLEMENTATION OF SHARED MEMORY
    KARLIN, AR
    UPFAL, E
    JOURNAL OF THE ACM, 1988, 35 (04) : 876 - 892
  • [29] Shared memory implementation of the gamma-operation
    Gladitz, K
    Kuchen, H
    JOURNAL OF SYMBOLIC COMPUTATION, 1996, 21 (4-6) : 577 - 591
  • [30] Shared Memory Implementation of the Gamma-Operation
    Journal of Symbolic Computation, 21 (4-6):