An Efficient Dynamic Scheduling of Tasks for Multicore Real-Time Systems

Chapter

Abstract

Embedded real-time systems are increasing day by day to execute high-performance-oriented applications on multicore architecture. Efficient task scheduling in these systems are very necessary so that majority of the tasks can be scheduled within their deadline and thus providing the needed throughput. This paper presents a scheduling algorithm where random tasks generated at different time intervals with different periodicity and execution time can be accommodated into a system, which is already running a set of tasks, meeting the deadline criteria of the tasks. The idle time of the cores has been found based on the execution time of the existing tasks. Using the concept of Pfair scheduling, random new tasks have been divided to fit into the idle times of the different cores of the system. We verify the proposed algorithm using generated task sets, and the results show that our algorithm performs excellently in all the cases.

Keywords

Dynamic scheduling Pfair Multicore Real-time system Task scheduling RTOS Idle time Two-level queues 

References

  1. 1.
    Kopetz H (1997) Real-time systems: design principles for distributed embedded applications. Kluwer Academic, NorwellMATHGoogle Scholar
  2. 2.
    Nakate MSS, Meshram BB, Chavan MJP (2012) New trends in real time operating systems IOSR J Eng 2(4):883–892Google Scholar
  3. 3.
    Rutzig MB, Madruga F, Alves MA, Cota H, Beck ACS, Maillard N, Navaux POA, Carro L (2010) TLP and ILP exploitation through a reconfigurable multiprocessor system. IEEE 978-1-4244-6534-7/10Google Scholar
  4. 4.
    Luque C, Moreto M, Cazorla FJ, Gioiosa R, Buyuktosunoglu A, Valero M (2012) CPU accounting for multicore processors. In: IEEE transaction on computers, vol 61, No 2, Feb 2012Google Scholar
  5. 5.
    Ju M, Jung H, Che H (2014) A performance analysis methodology for multicore, multithreaded processors. In: IEEE transaction on computers, vol 63, No 2, Feb 2014Google Scholar
  6. 6.
    Singh AK, Shaque M, Kumar A, Henkel J (2013) Mapping on multi/ many-core systems: survey of current and emerging trends. In: DAC 13 May 29 June 07 2013, Austin, TXGoogle Scholar
  7. 7.
    Vaidehi M, Gopalakrishnan Nair TR (2008) Multicore applications in real time systems. J Res Ind 1(1):30–35Google Scholar
  8. 8.
    Amalarethinam DIG, Mary GJJ (2011) A new DAG based dynamic task scheduling algorithm (DYTAS) for multiprocessor systems. Int J Comput Appl (0975–8887) 9(8), April 2011Google Scholar
  9. 9.
    Rammig F, Ditze M, Janacik P, Heimfarth T, Kerstan T, Oberthuer S, Stahl K (2009) Basic concept of real time operating systems. Springer Science + Business Media B.V.Google Scholar
  10. 10.
    Mohammadi A, Akl SG (2005) Technical report no. 2005–499 scheduling algorithms for real-time systems. School of computing, Queen’s University, Kingston, Ontario, 15 July 2005Google Scholar
  11. 11.
    Lehoczky J, Sha L, Ding Y (1989) The rate monotonic scheduling algorithm: exact characterization and average case behavior. IEEE. CH2803-5/89/0000/0166Google Scholar
  12. 12.
    Buttazzo GC (2005) Rate monotonic versus EDF: judgment day. Real time systems, vol 29. Springer Science + Business Media, Inc. Manufactured in The Netherlands, pp 5–26Google Scholar
  13. 13.
    Kato S, Takeda A, Yamasaki N (2008) Global rate-monotonic scheduling with priority promotion. IPSJ Trans Adv Comput Syst (ACS) 2(1):64–74Google Scholar
  14. 14.
    Zhang J, Fang X, Qi L (2014) LCM cycle based optimal scheduling in robotic cell with parallel workstations In: 2014 IEEE international conference on robotics and automation (ICRA), 31 May 2014–7 June 2014Google Scholar
  15. 15.
    Wang G, Gong W, Kastner R (2008) Operation scheduling: algorithms and applications In: Coussy P, Morawiec A (eds) High-Level synthesis, Springer Science + Business Media B.V.Google Scholar
  16. 16.
    Mathiyalagan P, Dhepthie UR, Sivanandam SN (2010) Enhanced hybrid PSO—ACO algorithm for gri scheduling. ICTACT J Soft Comput (01), July 2010Google Scholar
  17. 17.
    Bertogna M, Baruah S (2009) Limited preemption EDF scheduling of sporadic task systems. In: IEEE transactions on industrial informatics, vol. X, No X, Nov 2009Google Scholar
  18. 18.
    Herman JL, Kenna CJ, Mollison MS, Anderson JH, Johnson DM (2012) RTOS support for multicore mixed-criticality systems. In: RTAS ‘12 Proceedings of the 2012 IEEE 18th real time and embedded technology and applications symposiumGoogle Scholar
  19. 19.
    Mollison MS, Anderson JH (2013) Bringing theory into practice: a user space library for multicore real-time scheduling. In: IEEE real-time and embedded technology and applications symposium 2013, pp 283–292Google Scholar
  20. 20.
    Li Y, Suhendra V, Liang Y, Mitra T, Roychoudhury A (2009) Timing analysis of concurrent programs running on shared cache multi-cores. In: 2009 30th IEEE Real-time systems symposiumGoogle Scholar
  21. 21.
    Pacher M, Brinkschulte U (2011) Ordering of time-dependent tasks for self-organized resource scheduling. In: 2011 14th IEEE international symposium on object/component/service-oriented real-time distributed computing workshopsGoogle Scholar
  22. 22.
    Holenderski M, Bril RJ, Lukkien JJ (2012) Parallel-task scheduling on multiple resources. In: 2012 24th IEEE euromicro conference on real-time systemsGoogle Scholar
  23. 23.
    Paolieri M, Quinones E, Cazorla FJ, Davis RI, Valero M (2011) IA3: an interference aware allocation algorithm for multicore hard real-time systems. In: 2011 17th IEEE real-time and embedded technology and applications symposiumGoogle Scholar
  24. 24.
    Holman P, Anderson JH Implementing pfairness on a symmetric multiprocessor. In: Proceedings of the 10th IEEE real time and embedded technology and applications symposium (RTAS 04)Google Scholar
  25. 25.
    Park S (2014) Task-I/O co-scheduling for pfair real-time scheduler in embedded multicore systems. In: 2014 IEEE international conference on embedded and ubiquitous computingGoogle Scholar
  26. 26.
    Jayaseelan R, Mitra T (2009) Temperature aware scheduling for embedded processors. In: 2009 IEEE 22nd international conference on VLSI designGoogle Scholar
  27. 27.
    Chen L, Boichat N, Mitra T (2011). Customized MPSoC synthesis for task sequence. In: 2011 IEEE 9th symposium on application specific processors (SASP)Google Scholar
  28. 28.
    Chen L, Marconi T, Mitra T (2012) Online scheduling for multi-core shared reconfigurable fabric 978-3-9810801-8-6/DATE12 2012 EDAAGoogle Scholar
  29. 29.
    Ding H, Liang Y, Mitra T (2012) WCET-centric partial instruction cache locking. In: DAC 2012, Jun 3–7 San Francisco, California, USAGoogle Scholar
  30. 30.
    Pricopi M, Mitra T (2014) Task scheduling on adaptive multi-core. IEEE Trans Comput 63(10):2590–2603MathSciNetCrossRefGoogle Scholar
  31. 31.
    De Giusti L, Chichizola F, Naiouf M, De Giusti A, Luque E (2010) Automatic mapping tasks to cores—evaluating AMTHA algorithm in multicore architectures. IJCSI Int J Comput Sci Issues 7(2)(1), Mar 2010Google Scholar
  32. 32.
    Aghazarian V, Ghorbannia A, Motlagh NG, Naeini MK (2011) RQSG-I: an optimized real time scheduling algorithm for tasks allocation in grid environments. IEEE 978-1-61284-486-2/11Google Scholar
  33. 33.
    Bamakhrama M, Stefanov T (2011) Hard-real-time scheduling of data-dependent tasks in embedded streaming applications. In: EMSOFT’11, Taipei, Taiwan, 9–14 Oct 2011Google Scholar
  34. 34.
    Kim J, Shin T, Ha S, Oh H (2011) Resource minimized static mapping and dynamic scheduling of SDF Graphs. IEEE 978-1-4577-2122-9/11Google Scholar
  35. 35.
    Wu G, Li Y, Ren J, Lin C (2013) Partitioned fixed-priority real-time scheduling based on dependent task-split on multicore platform. In: 2013 12th IEEE international conference on trust, security and privacy in computing and communicationsGoogle Scholar
  36. 36.
    Qu WX, Fan XY, Liu Y, Yang H, Chen L (2010) Memory system prefetching for multi-core and multi-threading architecture. In: 2010 3rd international conference on advanced computer theory and engineering (ICACTE). IEEEGoogle Scholar
  37. 37.
    Peternier A, Ansaloni D, Bonetta D, Pautasso C, Binder W (2012) Hardware-aware thread scheduling: the case of asymmetric multicore processors. In: 2012 IEEE 18th international conference on parallel and distributed systemsGoogle Scholar
  38. 38.
    Anane A, Aboulhamid EM, Savaria Y (2012) System modeling and multicore simulation using transactions. IEEE 978-1-4673-2297-3/12Google Scholar
  39. 39.
    Pericas M, Cristal A, Cazorla FJ, Gonzalez R, Veidenbaum A, Jimenez DA, Valero M (2008) A two-level load/store queue based on execution locality In: International symposium on computer architecture IEEEGoogle Scholar
  40. 40.
    Jayaseelan R, Mitra T (2009) A hybrid local-global approach for multi-core thermal management. In: ICCAD 09, 2–5 Nov 2009, San Jose, California, USA Copyright 2009 ACM 978-1-60558-800-1/09/11Google Scholar
  41. 41.
    Lehoczky J, Sha L, Ding Y (1989) The rate monotonic scheduling algorithm: exact characterization and average case behavior. In: 1989 IEEE real-time system symposium, pp 166–171Google Scholar
  42. 42.
    Suhendra V, Mitra T (2008) Exploring locking & partitioning for predictable shared caches on multi-cores. In: DAC 2008, 8–13 June 2008, Anaheim, California, USA Copyright 2008 ACM 978-1-60558-115-6/08/0006Google Scholar
  43. 43.
    Levin G, Funk S, Sadowski C, Pye I, Brandt S (2010) DP-Fair: a simple model for understanding optimal multiprocessor scheduling In: 2010 IEEE 22nd euromicro conference on real-time systemsGoogle Scholar
  44. 44.
    Anderson JH, Srinivasan A (2000) Pfair scheduling: beyond periodic task systems. IEEE 1530-1427/00Google Scholar

Copyright information

© Springer Science+Business Media Singapore 2016

Authors and Affiliations

  1. 1.National Institute of Electronics and Information TechnologyKolkataIndia
  2. 2.A. K. Choudhury School of Information TechnologyUniversity of CalcuttaKolkataIndia

Personalised recommendations