658 IEICE TRANS. INF. & SYST., VOL.E88–D, NO.3 MARCH 2005 LETTER Comparison of Deadline-Based Scheduling Algorithms for Periodic Real-Time Tasks on Multiprocessor * Minkyu PARK †a) , Sangchul HAN †† , Heeheon KIM †† , Nonmembers, Seongje CHO ††† , and Yookun CHO †† , Members SUMMARY Multiprocessor architecture becomes common on real- time systems as the workload of real-time systems increases. Recently new deadline-based (EDF-based) multiprocessor scheduling algorithms are devised, and comparative studies on the performance of these algorithms are necessary. In this paper, we compare EDZL, a hybrid of EDF and LLF, with other deadline-based scheduling algorithms such as EDF, EDF- US[m/(2m-1)], and fpEDF. We show EDZL schedules all task sets schedu- lable by EDF. The experimental results show that the number of preemp- tions of EDZL is comparable to that of EDF and the schedulable utilization bound of EDZL is higher than those of other algorithms we consider. key words: multiprocessor, real-time, scheduling, periodic, deadline 1. Introduction As computer hardware technology rapidly progresses and the workload of real-time systems increases, multiproces- sor architecture has become more common on real-time sys- tems. Many researchers have applied uniprocessor schedul- ing algorithms such as EDF (Earliest Deadline First) [1] and LLF (Least Laxity First) [2] to multiprocessor real-time scheduling, which are optimal algorithms on uniprocessor. EDF has a bounded number of preemptions with respect to the number of jobs, and it can be implemented efficiently. LLF might have a higher schedulable utilization bound than EDF on multiprocessor [3]. However, the processor utilization of EDF can be very low[4], and LLF can cause a large number of preemptions. EDZL (Earliest Deadline until Zero Laxity) algorithm [5] combines the advantage of EDF and LLF: a small number of preemptions and a high schedulable utilization bound, re- spectively. EDZL schedules jobs based on both their dead- line and laxity. EDZL schedules jobs according to EDF while all jobs have positive laxities. When a job’s laxity becomes zero, EDZL schedules the job first of all. In this paper, we compare EDZL with other deadline-based scheduling algorithms such as EDF, EDF- US[m/(2m - 1)] [6], and fpEDF [7]. EDF-US[m/(2m - 1)] Manuscript received June 23, 2004. Manuscript revised August 23, 2004. † The author is with the Department of Computer Engineering, Seoul National University, 151–742, Korea. †† The authors are with the School of Electrical Engineering and Computer Science, Seoul National University, 151–742, Korea. ††† The author is with the Division of Information and Computer Science, Dankook University, 140–714, Korea. ∗ This work is supported in part by Brain Korea 21 project and in part by ICT. a) E-mail: mkpark@ssrnet.snu.ac.kr DOI: 10.1093/ietisy/e88–d.3.658 and fpEDF does not dominate EDF, but EDZL strictly domi- nates EDF. In other words, EDF-US[m/(2m - 1)] and fpEDF cannot schedule some task sets that are schedulable by EDF, but EDZL can schedule all task sets schedulable by EDF as well as some task sets not schedulable by EDF. The ex- perimental results show EDZL is a practical multiprocessor scheduling algorithm with a small number of preemptions and a high schedulable utilization bound. 1.1 System Model We consider preemptive scheduling algorithms for peri- odic task sets on m identical processors. A task set τ = {τ 1 ,τ 2 ,...,τ n } consists of n independent periodic tasks. A periodic task τ i = (C i , P i ) is characterized by two parame- ters: a worst-case computation time C i and a period P i . We assume that all tasks start at the same time and a relative deadline of each task is equal to its period: each task gener- ates a job at time (k - 1) · P i (k = 1, 2,...), which needs to be executed for C i units by a deadline of k · P i . A job j i is represented by (c i , d i ), where c i is the remaining computa- tion time and d i is the remaining time to its deadline. c i and d i both vary with time. At the time a job is released, c i = C i and d i = P i . The laxity of a job is defined to be l i = d i - c i . We define utilization of a periodic task τ i to be u i = C i P i , and total utilization of a task set τ, U (τ) =Σ n i=1 u i . 1.2 Deadline-Based Algorithms A deadline-based algorithm is a scheduling algorithm that assigns priorities based on deadlines. Such algorithms are EDF, EDF-US[m/(2m - 1)], fpEDF, and EDZL. EDF assigns highest priority to jobs with earliest dead- lines. EDF can be efficiently implemented and the to- tal number of preemptions is bounded by the number of jobs [8]. However, the utilization bound of EDF can be very low on multiprocessor. Dhall et al. [4] showed that EDF has difficulty in scheduling task sets in which high utilization tasks and low utilization tasks are mixed. EDF-US[m/(2m - 1)] [6] and fpEDF [7] are variants of EDF. They divide tasks into two groups: higher utilization tasks and lower utilization tasks. Higher utilization tasks are given highest priority and lower utilization tasks are given priorities according to EDF. They differ in the boundary con- dition that divides tasks and in their schedulable utilization bound. EDF-US[m/(2m - 1)] gives highest priority to tasks Copyright c 2005 The Institute of Electronics, Information and Communication Engineers