On-line scheduling of scalable real-time tasks on multiprocessor systems

The computation time of scalable tasks depends on the number of processors allocated to them in multiprocessor systems. As more processors are allocated to a scalable task, the overall computation time of the task decreases but the total amount of processors' time devoted to the execution of the task, called workload, increases due to parallel execution overhead. In this paper, we propose a task scheduling algorithm that utilizes the property of scalable tasks for on-line and real-time scheduling. In the proposed algorithm, the total workload of all scheduled tasks is reduced by managing processors allocated to the tasks as few as possible without missing their deadlines. As a result, the processors in the system have less load to execute the scheduled tasks and can execute more newly arriving tasks before their deadlines. Simulation results show that the proposed algorithm performs significantly better than the conventional algorithm based on a fixed number of processors to execute each task.

[1]  C. Siva Ram Murthy,et al.  An Efficient Dynamic Scheduling Algorithm For Multiprocessor Real-Time Systems , 1998, IEEE Trans. Parallel Distributed Syst..

[2]  Anshul Gupta,et al.  Analysis and design of scalable parallel algorithms for scientific computing , 1995 .

[3]  Jeffrey D. Ullman,et al.  Worst-Case Performance Bounds for Simple One-Dimensional Packing Algorithms , 1974, SIAM J. Comput..

[4]  Phillip Krueger,et al.  On-Line Hard Real-Time Scheduling of Parallel Tasks on Partitionable Multiprocessors , 1994, 1994 Internatonal Conference on Parallel Processing Vol. 2.

[5]  Kenneth C. Sevcik Characterizations of parallelism in applications and their use in scheduling , 1989, SIGMETRICS '89.

[6]  Manoj Kumar,et al.  Measuring Parallelism in Computation-Intensive Scientific/Engineering Applications , 1988, IEEE Trans. Computers.

[7]  Prasant Mohapatra Dynamic Real-Time Task Scheduling on Hypercubes , 1997, J. Parallel Distributed Comput..

[8]  Jeffrey F. Naughton,et al.  Low-Latency, Concurrent Checkpointing for Parallel Programs , 1994, IEEE Trans. Parallel Distributed Syst..

[9]  Prithviraj Banerjee,et al.  An Approximate Algorithm for the Partitionable Independent Task Scheduling Problem , 1990, ICPP.

[10]  Beng Chin Ooi,et al.  Efficient Query Processing in Geographic Information Systems , 1990, Lecture Notes in Computer Science.

[11]  Kenji Toda,et al.  The Execution Model and the Architecture for Real-Time Parallel Systems , 1994, IFIP Congress.

[12]  Yahui Zhu,et al.  On Job Scheduling on a Hypercube , 1993, IEEE Trans. Parallel Distributed Syst..

[13]  Giuseppe Serazzi,et al.  Processor Saving Scheduling Policies for Multiprocessor Systems , 1998, IEEE Trans. Computers.

[14]  Satish K. Tripathi,et al.  The Processor Working Set and Its Use in Scheduling Multiprocessor Systems , 1991, IEEE Trans. Software Eng..

[15]  Jong Kim,et al.  Real-time job scheduling in hypercube systems , 1997, Proceedings of the 1997 International Conference on Parallel Processing (Cat. No.97TB100162).

[16]  Krithi Ramamritham,et al.  Efficient Scheduling Algorithms for Real-Time Multiprocessor Systems , 1989, IEEE Trans. Parallel Distributed Syst..

[17]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[18]  C. Siva Ram Murthy,et al.  A New Approach for Scheduling of Parallelizable Tasks in Real-Time Multiprocessor Systems , 1998, Real-Time Systems.

[19]  Charles U. Martel,et al.  On non-preemptive scheduling of period and sporadic tasks , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.

[20]  Ramesh Krishnamurti An Approximation Algorithm for Scheduling Tasks on Varying Partition Sizes in Partitionable Multiprocessor Systems , 1992, IEEE Trans. Computers.

[21]  A. Wohnhaas,et al.  Parallel simulation of mechanical systems for real-time applications , 1994 .

[22]  Prasant Mohapatra,et al.  An adaptive job allocation method for multicomputer systems , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[23]  Marco Spuri,et al.  Implications of Classical Scheduling Results for Real-Time Systems , 1995, Computer.

[24]  Hesham H. Ali,et al.  Task scheduling in parallel and distributed systems , 1994, Prentice Hall series in innovative technology.

[25]  Mary K. Vernon,et al.  Use of application characteristics and limited preemption for run-to-completion parallel processor scheduling policies , 1994, SIGMETRICS.

[26]  Edward D. Lazowska,et al.  Speedup Versus Efficiency in Parallel Systems , 1989, IEEE Trans. Computers.

[27]  Bhagirath Narahari,et al.  Scheduling independent tasks on partitionable hypercube multiprocessors , 1993, [1993] Proceedings Seventh International Parallel Processing Symposium.

[28]  Evripidis Bampis,et al.  On the approximability of scheduling multiprocessor tasks with time-dependent processor and time requirements , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[29]  Kai Hwang,et al.  Advanced computer architecture - parallelism, scalability, programmability , 1992 .

[30]  Sang Hyuk Son,et al.  New Strategies for Assigning Real-Time Tasks to Multiprocessor Systems , 1995, IEEE Trans. Computers.

[31]  Vijay P. Kumar,et al.  Analyzing Scalability of Parallel Algorithms and Architectures , 1994, J. Parallel Distributed Comput..

[32]  Ronald L. Rivest,et al.  Orthogonal Packings in Two Dimensions , 1980, SIAM J. Comput..

[33]  Sanjoy K. Baruah,et al.  On-line scheduling to maximize task completions , 1994, 1994 Proceedings Real-Time Systems Symposium.

[34]  Krithi Ramamritham,et al.  Bounds on the performance of heuristic algorithms for multiprocessor scheduling of hard real-time tasks , 1992, [1992] Proceedings Real-Time Systems Symposium.