Abstract
Scheduling periodic tasks onto a multiprocessor architecture under several constraints such as performance, cost, energy, and reliability is a major challenge in embedded systems. In this paper, we present an Integer Linear Programming (ILP) based framework that maps a given task set onto an Heterogeneous Multiprocessor System-on-Chip (HMPSoC) architecture. Our framework can be used with several objective functions; minimizing energy consumption, minimizing cost (i.e., the number of heterogeneous processors), and maximizing reliability of the system under performance constraints. We use Dynamic Voltage Scaling (DVS) for reducing energy consumption while we employ task duplication to maximize reliability. We illustrate the effectiveness of our approach through several experiments, each with a different number of tasks to be scheduled. We also propose two heuristics based on Earliest Deadline First (EDF) algorithm for minimizing energy under performance and cost constraints. Our experiments on generated task sets show that ILP-based method reduces the energy consumption up to 62% percent against a method that does not apply DVS. Heuristic methods obtain promising results when compared to optimal results generated by our ILP-based method.
Similar content being viewed by others
References
Wolf W, Jerraya AA, Martin G (2008) Multiprocessor System-on-Chip (MPSoC) technology. IEEE Trans Comput-Aided Des Integr Circuits Syst 27(10):1701–1713
Kumar R, Tullsen DM, Jouppi NP, Ranganathan P (2005) Heterogeneous chip multiprocessors. Computer 38(11):32–38
Cesario WO, Lyonnard D, Nicolescu G, Paviot Y, Yoo S, Jerraya AA, Gauthier L, Diaz-Nava M (2002) Multiprocessor SoC platforms: a component-based design approach. IEEE Des Test Comput 19(6):52–63
Paul JM, Thomas DE, Bobrek A (2004) Benchmark-based design strategies for single chip heterogeneous multiprocessors. In: CODES+ISSS’04
Axelsson J (1997) Analysis and synthesis of heterogeneous real-time systems. Ph.D. Dissertation, Linkoping University, Sweden
Malani P, Tan Y, Qiu Q (2007) Resource-aware high performance scheduling for embedded MPSoCs with the application of MPEG decoding. In: Multimedia and expo, IEEE international conference on, pp 715–718, 2–5 July 2007
Wang Y, Xu J, Xu Y, Liu W, Yang H (2010) Power gating aware task scheduling in MPSoC. IEEE Trans Very Large Scale Integr (VLSI) Syst, 99, 1–12
Huang L, Yuan F, Xu Q (2009) Lifetime reliability-aware task allocation and scheduling for MPSoC platforms. In: Design, automation & test in Europe conference & exhibition, DATE ’09, pp 51–56, 20–24 April 2009
Berkelaar M, Eikland K, Notebaert P (2004) lp_solve: open source (mixed-integer) linear programming system, Version 5.0.0.0, 1 May 2004
Weiser M, Welch B, Demers A, Shenker S (1994) Scheduling for reduced CPU energy. In: Proceedings of the 1st symposium on operating systems design and implementation
Chan E, Govil K, Wasserman H (1995) Comparing algorithms for dynamic speed-setting of a low-power CPU. In: Proceedings of the first ACM international conference on mobile computing and networking
Zang Y, Hu X, Chen D (2002) Task scheduling and voltage selection for energy minimization. In: Proceedings of 39th DAC
Ishihara T, Yasuura H (1998) Voltage scheduling problem for dynamically variable voltage processors. In: Proc. of the 1988 international symposium on low power electronics and design
Luo J, Jha NK (2000) Power-conscious joint scheduling of periodic task graphs and aperiodic tasks in distributed real-time embedded systems. In: ICCAD
Lin Y-C, You Y-P, Huang C-W, Lee JK, Shih W-K, Hwang T-T (2007) Energy-aware scheduling and simulation methodologies for parallel security processors with multiple voltage domains. J Supercomput 42(2):201–223
Xu R, Mossé D, Melhem R (2007) Minimizing expected energy consumption in real-time systems through dynamic voltage scaling. ACM Trans Comput Syst 25(4): Article 9
Li K (2010) Fast and highly scalable parallel computations for fundamental matrix problems on distributed memory systems. J Supercomput 54(3):271–297
Zhang S, Chatha KS (2008) Automated techniques for energy efficient scheduling on homogeneous and heterogeneous chip multi-processor architectures. In: Design automation conference. ASPDAC 2008. Asia and South Pacific, pp 61–66, 21–24 March 2008
Erbas C, Erbas SC, Pimentel AD (2003) A multiobjective optimization model for exploring multiprocessor mappings of process networks. In: Proceedings of the IEEE/ACM/IFIP international conference on hardware/software co-design and system synthesis
Baskiyar Sanjeev, Rabab Abdel-Kader (2010) Energy aware DAG scheduling on heterogeneous systems. Clust Comput 13(4):373–383
Chang P-C, Wu I-W, Shann J-J, Chung C-P (2008) ETAHM: an energy-aware task allocation algorithm for heterogeneous multiprocessor. In: Proceedings of the 45th annual design automation conference (DAC ’08). New York, NY, USA. ACM Press, New York, pp 776–779
Chen J, John LK (2009) Efficient program scheduling for heterogeneous multi-core processors. In: Proceedings of the 46th annual design automation conference (DAC ’09). New York, NY, USA. ACM Press, New York, pp 927–930
Goh LK, Veeravalli B, Viswanathan S (2009) Design of fast and efficient energy-aware gradient-based scheduling algorithms heterogeneous embedded multiprocessor systems. IEEE Trans Parallel Distrib Syst 20(1):1–12
Yang C-Y, Chen J-J, Kuo T-W, Thiele L (2009) An approximation scheme for energy-efficient scheduling of real-time tasks in heterogeneous multiprocessor systems. In: Design, automation & test in Europe conference & exhibition. DATE ’09, pp 694–699, 20–24 April 2009
Zhu Y, Mueller F (2004) Feedback EDF scheduling exploiting dynamic voltage scaling. In: 10th IEEE real-time and embedded technology and applications symposium (RTAS’04)
Im C, Ha S (2004) Dynamic voltage scaling for real-time multi-task scheduling using buffers. In: LCTES
Jejurikar R, Gupta R (2004) Dynamic voltage scaling for systemwide energy minimization in real-time embedded systems. In: Proceedings of international symposium on low power electronics and design
Liu Y, Mok AK (2003) An integrated approach for applying dynamic voltage scaling to hard real-time systems. In: IEEE real time technology and applications symposium
Xie Y, Li L, Kandemir M, Vijaykrishnan N, Irwin MJ (2007) Reliability-aware co-synthesis for embedded systems. J VLSI Signal Process Syst 49(1):87–99
Gu Z, Zhu C, Shang L, Dick RP (2008) Application-specific MPSoC reliability optimization,. IEEE Trans Very Large Scale Integr (VLSI) Syst 16(5):603–608
Pop P, Izosimov V, Eles P, Peng Z (2009) Design optimization of time- and cost-constrained fault-tolerant embedded systems with checkpointing and replication. IEEE Trans Very Large Scale Integr (VLSI) Syst 17(3):389–402
Tang X, Li K, Li R, Veeravalli B (2010) Reliability-aware scheduling strategy for heterogeneous distributed computing systems. J Parallel Distrib Comput 70(9):941–952
Shafik RA, Al-Hashimi BM, Kundu S, Ejlali A (2009) Soft Error-Aware Voltage scaling technique for power minimization in application-specific MPSoC. J Low Power Electron 5(2):145–156
Yang S, Wang W, Lu T, Wolf W, Vijaykrishnan N, Xie Y (2008) Case study of reliability-aware and low-power design. IEEE Trans Very Large Scale Integr Syst 16(7):861–873
Qi X, Zhu D, Aydin H (2011) Global scheduling based reliability-aware power management for multiprocessor real-time systems. Real-Time Syst 47(2):109–142
Zhu D, Aydin H (2009) Reliability-aware energy management for periodic real-time tasks. IEEE Trans Comput 58(10):1382–1397
Elnozahy EN, Melhem RG, Mossé D (2002) Energy-efficient duplex and TMR real-time systems. In: IEEE real-time systems symposium
Zhang Y, Chakrabarty K (2003) Energy-aware adaptive checkpointing in embedded real-time systems. In: DATE
Tosun S, Mansouri N, Kandemir MT, Ozturk O (2006) An ILP formulation for task scheduling on heterogeneous chip multiprocessors. In: ISCIS
Tosun S, Yavuz Y (2008) Task scheduling on heterogeneous chip multiprocessors for reducing energy. In: ELECO
Liu JWS (2000) Real-time systems. Prentice Hall, New York
Li Y, Wolf W (1997) A task-level hierarchical memory model for system synthesis of multiprocessors. In: Proceedings of 34th design automation conference
Prakash S, Parker AC (1992) SOS: Synthesis of application-specific heterogeneous multiprocessor systems. J Parallel Distrib Comput 16:338–351
Krishna CM, Lee YH (2003) Voltage-clock-scaling adaptive scheduling techniques for low power in hard real-time systems. IEEE Trans Comput 52(12):1586–1593
Ye W, Vijaykrishnan N, Kandemir M, Irwin MJ (2000) The design and use of simplePower: a cycle-accurate energy estimation tool. In: Proceedings of 37th design automation conference, pp 340–345
Dhiraj K, Pradhan N, Vaidya H (1994) Roll-forward and rollback recovery: performance-reliability trade-off. In: International symposium on fault tolerant computing
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Tosun, S. Energy- and reliability-aware task scheduling onto heterogeneous MPSoC architectures. J Supercomput 62, 265–289 (2012). https://doi.org/10.1007/s11227-011-0720-3
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-011-0720-3