Skip to main content
Log in

Assigning real-time tasks on heterogeneous multiprocessors with two unrelated types of processors

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

Consider the problem of partitioned scheduling of an implicit-deadline sporadic task set on heterogeneous multiprocessors to meet all deadlines. Each processor is either of type-1 or type-2. We present a new algorithm, FF-3C, for this problem. FF-3C offers low time-complexity and provably good performance. Specifically, FF-3C offers (i) a time-complexity of O(n⋅max(m,logn)+m⋅logm), where n is the number of tasks and m is the number of processors and (ii) the guarantee that if a task set can be scheduled by an optimal partitioned-scheduling algorithm to meet all deadlines then FF-3C meets all deadlines as well if given processors at most \(\frac{1}{1-\alpha}\) times as fast (referred to as speed competitive ratio) and tasks are scheduled using EDF; where α is a property of the task set. The parameter α is in the range (0,0.5] and for each task, it holds that its utilization is no greater than α or greater than 1−α on each processor type. Thus, the speed competitive ratio of FF-3C can never exceed 2.

We also present several extensions to FF-3C; these offer the same performance guarantee and time-complexity but with improved average-case performance. Via simulations, we compare the performance of our new algorithms and two state-of-the-art algorithms (and variations of the latter). We evaluate algorithms based on (i) running time and (ii) the necessary multiplication factor, i.e., the amount of extra speed of processors that the algorithm needs, for a given task set, so as to succeed, compared to an optimal task assignment algorithm. Overall, we observed that our new algorithms perform significantly better than the state-of-the-art. We also observed that our algorithms perform much better in practice, i.e., the necessary multiplication factor of the algorithms is much smaller than their speed competitive ratio. Finally, we also present a clustered version of the new algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Algorithm 1
Algorithm 2
Algorithm 3
Algorithm 4
Algorithm 5
Algorithm 6
Algorithm 7
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Notes

  1. An optimal scheduling algorithm is one which always succeeds in finding a schedule in which all the deadlines are met, if such a schedule exists.

  2. A PTAS is an algorithm which produces a solution that is within a factor 1+ϵ of being optimal where ϵ>0 is a design parameter. The run time of a PTAS is polynomial in the input size (e.g., number of jobs) and may be exponential in 1/ϵ. A FPTAS is a PTAS with a running time that is polynomial both in input size and 1/ϵ.

  3. For a given problem instance, the necessary multiplication factor of an algorithm is upper bounded by its speed competitive ratio. If an algorithm has low necessary multiplication factor (compared to its speed competitive ratio) for the vast majority of task sets then it indicates that the algorithm performs well.

  4. Our notion of speed competitive ratio in this paper is equivalent to that in previous work (Baruah 2004a). It differs from that used in Andersson and Tovar (2007b). Other authors refer to speed competitive ratio as resource augmentation bound.

  5. A reasonable allocation algorithm is an algorithm that fails to assign a task only when there is no processor in the system that can hold the task (López et al. 2004). Allocation algorithms such as first-fit and best-fit are two examples of reasonable allocation algorithms.

  6. The actual remaining capacity on processor p is \(1-\sum_{i: x_{i,p} =1} u_{i,p}\) where u i,p represents the utilization of τ i on processor p (Baruah 2004c). The symbol x i,p represents the indicator variable and the value of 0≤x i,p ≤1 indicates how much fraction of task τ i must be assigned to processor p. The term \(1-\sum_{i: x_{i,p} =1} u_{i,p}\) gives an accurate estimation of the remaining capacity on processor p as it ignores the fractionally assigned tasks on that processor whereas z is pessimistic since it includes those tasks as well.

  7. Since we only evaluate FF-algorithms in this batch of experiments and do not run SKB-algorithms which make use of linear programming solvers thereby taking much longer to output the solution, we could afford to set a higher bound on the number of tasks in each problem instance compared to previous set of experiments.

References

  • AMD Inc (2010) AMD fusion family of APUs: Enabling a superior, immersive PC experience. http://www.amd.com/us/Documents/48423_fusion_whitepaper_WEB.pdf

  • AMD Inc (2011a) AMD embedded G-series platform. http://www.amd.com/us/products/embedded/processors/Pages/g-series.aspx

  • AMD Inc (2011b) The AMD fusion family of APUs. http://sites.amd.com/us/fusion/apu/Pages/fusion.aspx

  • Andersson B, Bletsas K (2008) Sporadic multiprocessor scheduling with few preemptions. In: 20th Euromicro conference on real-time systems, pp 243–252

    Chapter  Google Scholar 

  • Anderson J, Srinivasan A (2000) Early-release fair scheduling. In: Proceedings of the 12th Euromicro conference on real-time systems, pp 35–43

    Google Scholar 

  • Andersson B, Tovar E (2007a) Competitive analysis of partitioned scheduling on uniform multiprocessors. In: Proceedings of the 15th international workshop on parallel and distributed real-time systems, pp 1–8

    Google Scholar 

  • Andersson B, Tovar E (2007b) Competitive analysis of static-priority of partitioned scheduling on uniform multiprocessors. In: Proceedings of the 13th IEEE international conference on embedded and real-time computing systems and applications, pp 111–119

    Google Scholar 

  • Andersson B, Baruah S, Jonsson J (2001) Static-priority scheduling on multiprocessors. In: Proceedings of the 22nd IEEE real-time systems symposium, pp 193–202

    Google Scholar 

  • Andersson B, Raravi G, Bletsas K (2010) Assigning real-time tasks on heterogeneous multiprocessors with two unrelated types of processors. In: Proceedings of the 31st IEEE international real-time systems symposium, pp 239–248

    Chapter  Google Scholar 

  • Baruah S (2004a) Feasibility analysis of preemptive real-time systems upon heterogeneous multiprocessor platforms. In: Proceedings of the 25th IEEE international real-time systems symposium, pp 37–46

    Chapter  Google Scholar 

  • Baruah S (2004b) Partitioning real-time tasks among heterogeneous multiprocessors. In: Proc of the 33rd international conference on parallel processing, pp 467–474

    Google Scholar 

  • Baruah S (2004c) Task partitioning upon heterogeneous multiprocessor platforms. In: Proceedings of the 10th IEEE international real-time and embedded technology and applications symposium, pp 536–543

    Google Scholar 

  • Coffman EG, Garey MR, Johnson DS (1997) Approximation algorithms for bin packing: a survey. In: Approximation algorithms for NP-hard problems. PWS, Boston, pp 46–93

    Google Scholar 

  • Cormen TH, Leiserson CE, Rivest RL, Stein C (2001) Introduction to algorithms, 2nd edn. McGraw-Hill, New York

    MATH  Google Scholar 

  • Dertouzos M (1974) Control robotics: The procedural control of physical processes. In: Proceedings of IFIP congress (IFIP’74), pp 807–813

    Google Scholar 

  • Freescale Semiconductor (2007) i.MX applications processors. http://www.freescale.com/webapp/sps/site/homepage.jsp?code=IMX_HOME

  • Garey MR, Johnson DS (1979) Computers and intractability: A guide to the theory of NP-completeness. Freeman, New York

    MATH  Google Scholar 

  • Geer D (2005) Taking the graphics processor beyond graphics. IEEE Comput 38(9):14–16

    Article  Google Scholar 

  • Grandpierre T, Lavarenne C, Sorel Y (1999) Optimized rapid prototyping for real-time embedded heterogeneous multiprocessors. In: Proceedings of the 7th international workshop on hardware/software codesign, pp 74–78

    Chapter  Google Scholar 

  • Gschwind M, Hofstee HP, Flachs B, Hopkins M, Watanabe Y, Yamazaki T (2006) Synergistic processing in cell’s multicore architecture. IEEE MICRO 26(2):10–24

    Article  Google Scholar 

  • Hochbaum D, Shmoys D (1986) A polynomial approximation scheme for machine scheduling on uniform processors: using the dual approximation approach. In: Proc of the sixth conference on foundations of software technology and theoretical computer science, pp 382–393

    Chapter  Google Scholar 

  • Horowitz E, Sahni S (1976) Exact and approximate algorithms for scheduling nonidentical processors. J ACM 23:317–327

    Article  MathSciNet  MATH  Google Scholar 

  • IBM Inc (2005) The cell project at IBM research. http://www.research.ibm.com/cell/

  • IBM Inc (2011) IBM ILOG CPLEX optimizer. http://www-01.ibm.com/software/integration/optimization/cplex-optimizer/

  • IEEE Spectrum (2011) With Denver project NVIDIA and ARM join CPU-GPU integration race. http://spectrum.ieee.org/tech-talk/semiconductors/processors/with-denver-project-nvidia-and-arm-join-cpugpu-integration-race

  • Intel Corporation (2011) The 2nd generation Intel Core processor family. http://www.intel.com/en_IN/consumer/products/processors/core-family.htm

  • Lenstra J, Shmoys D, Tardos E (1990) Approximation algorithms for scheduling unrelated parallel machines. Math Program 46:259–271

    Article  MathSciNet  MATH  Google Scholar 

  • Levin G, Funk S, Sadowskin C, Pye I, Brandt S (2010) DP-FAIR: A simple model for understanding optimal multiprocessor scheduling. In: Proceedings of the 22nd Euromicro conference on real-time systems, pp 3–13

    Chapter  Google Scholar 

  • Liu C, Layland J (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. J ACM 20:46–61

    Article  MathSciNet  MATH  Google Scholar 

  • López M, Díaz J, García D (2004) Utilization bounds for EDF scheduling on real-time multiprocessor systems. Real-Time Syst 28:39–68

    Article  MATH  Google Scholar 

  • Maeda S, Asano S, Shimada T, Awazu K, Tago H (2005) A real-time software platform for the Cell processor. IEEE MICRO 25(5):20–29

    Article  Google Scholar 

  • NVIDIA (2011) Tegra 2 and Tegra 3 super processors. http://www.nvidia.com/object/tegra-superchip.html

  • Potts C (1985) Analysis of a linear programming heuristic for scheduling unrelated parallel machines. Discrete Appl Math 10:155–164

    Article  MathSciNet  MATH  Google Scholar 

  • Qi X, Zhu D, Aydin H (2010) A study of utilization bound and run-time overhead for cluster scheduling in multiprocessor real-time systems. In: Proceedings of the 16th IEEE international conference on embedded and real-time computing systems and applications, pp 3–12

    Google Scholar 

  • Texas Instruments (2011) OMAP application processors: OMAP 5 platform. http://www.ti.com/ww/en/omap/omap5/omap5-platform.html

  • Wiese A, Bonifaci V, Baruah S (2012) Partitioned EDF scheduling on a few types of unrelated multiprocessors. Tech rep. Available at http://www.cs.unc.edu/~baruah/Submitted/2012-k-unrelated.pdf

Download references

Acknowledgements

This work was partially supported by National Funds through FCT (Portuguese Foundation for Science and Technology) and by ERDF (European Regional Development Fund) through COMPETE (Operational Programme ‘Thematic Factors of Competitiveness’), within project Ref. FCOMP-01-0124-FEDER-022701; by FCT and COMPETE (ERDF), within REHEAT project, ref. FCOMP-01-0124-FEDER-010045; by FCT and ESF (European Social Fund) through POPH (Portuguese Human Potential Operational Program), under PhD grant SFRH/BD/66771/2009.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gurulingesh Raravi.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Raravi, G., Andersson, B. & Bletsas, K. Assigning real-time tasks on heterogeneous multiprocessors with two unrelated types of processors. Real-Time Syst 49, 29–72 (2013). https://doi.org/10.1007/s11241-012-9161-1

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-012-9161-1

Keywords

Navigation