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 条
  • [31] Constructive, deterministic implementation of shared memory on meshes
    Pietracaprina, A
    Pucci, G
    Sibeyn, JF
    SIAM JOURNAL ON COMPUTING, 2000, 30 (02) : 625 - 648
  • [32] A synchronizing shared memory: Model and programming implementation
    Vlassov, V
    Thorelli, LE
    RECENT ADVANCES IN PARALLEL VIRTUAL MACHINE AND MESSAGE PASSING INTERFACE, 1997, 1332 : 159 - 166
  • [33] Convergence Verification: Prom Shared Memory to Partially Synchronous Systems
    Chandy, K. Mani
    Mitra, Sayan
    Pilotto, Concetta
    FORMAL MODELING AND ANALYSIS OF TIMED SYSTEMS, PROCEEDINGS, 2008, 5215 : 218 - 232
  • [34] Brief Announcement: Partially Replicated Causally Consistent Shared Memory
    Xiang, Zhuolun
    Vaidya, Nitin H.
    PODC'18: PROCEEDINGS OF THE 2018 ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING, 2018, : 273 - 275
  • [35] Design alternatives for shared memory multiprocessors
    Carter, J
    Kuo, CC
    Kuramkote, R
    Swanson, M
    FIFTH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING, PROCEEDINGS, 1998, : 41 - 50
  • [36] PRISM - a design for scalable shared memory
    Kattamuri, E
    Lim, BH
    Pattnaik, P
    Snir, M
    INNOVATIVE ARCHITECTURE FOR FUTURE GENERATION HIGH-PERFORMANCE PROCESSORS AND SYSTEMS, PROCEEDINGS, 1998, : 29 - 29
  • [37] Modularity-based parallel protein design algorithm with an implementation using shared memory programming
    Pal, Abantika
    Mulumudy, Rohith
    Mitra, Pralay
    PROTEINS-STRUCTURE FUNCTION AND BIOINFORMATICS, 2022, 90 (03) : 658 - 669
  • [38] Bridging Repairability Gaps in Shared Bus Architecture with Shared Physical Memory Implementation
    Karkare, Nikhil
    Pradeep, Wilson
    2023 IEEE INTERNATIONAL TEST CONFERENCE INDIA, ITC INDIA, 2023,
  • [39] DISTRIBUTED SHARED-MEMORY IMPLEMENTATION FOR MULTITRANSPUTER SYSTEMS
    TSANAKAS, P
    PAPAKONSTANTINOU, G
    EFTHIVOULIDIS, G
    INFORMATION AND SOFTWARE TECHNOLOGY, 1992, 34 (08) : 499 - 506
  • [40] Implementation of recoverable distributed shared memory by logging writes
    Kanthadai, S
    Welch, JL
    PROCEEDINGS OF THE 16TH INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS, 1996, : 116 - 123