CFP last date
20 May 2024
Reseach Article

An Effective Resource Partitioning Heuristic for Embedded Applications on an MPSoC

by Hassan Salamy, Olalekan Sopeju
International Journal of Computer Applications
Foundation of Computer Science (FCS), NY, USA
Volume 97 - Number 10
Year of Publication: 2014
Authors: Hassan Salamy, Olalekan Sopeju

Hassan Salamy, Olalekan Sopeju . An Effective Resource Partitioning Heuristic for Embedded Applications on an MPSoC. International Journal of Computer Applications. 97, 10 ( July 2014), 1-8. DOI=10.5120/17040-7350

@article{ 10.5120/17040-7350,
author = { Hassan Salamy, Olalekan Sopeju },
title = { An Effective Resource Partitioning Heuristic for Embedded Applications on an MPSoC },
journal = { International Journal of Computer Applications },
issue_date = { July 2014 },
volume = { 97 },
number = { 10 },
month = { July },
year = { 2014 },
issn = { 0975-8887 },
pages = { 1-8 },
numpages = {9},
url = { },
doi = { 10.5120/17040-7350 },
publisher = {Foundation of Computer Science (FCS), NY, USA},
address = {New York, USA}
%0 Journal Article
%1 2024-02-06T22:23:43.248589+05:30
%A Hassan Salamy
%A Olalekan Sopeju
%T An Effective Resource Partitioning Heuristic for Embedded Applications on an MPSoC
%J International Journal of Computer Applications
%@ 0975-8887
%V 97
%N 10
%P 1-8
%D 2014
%I Foundation of Computer Science (FCS), NY, USA

As the utilization of multiprocessors system-on-chip (MPSoC) is becoming ubiquitous, demands for effective allocation and scheduling techniques are needed more than ever to harness the power of MPSoCs. An MPSoC is a system consisting of multiple heterogeneous processing cores, memory hierarchies, and communication infrastructure to effectively overcome the power and clock constraints from single core architectures. MPSoCs provide the performance demanded by embedded applications especially real-time multimedia applications. This article presents effective techniques to partitioning the processing cores and memory budget in an MPSoC among multiple embedded applications possibly entering the system at different times. The proposed framework will study the structure of each application and predict the possible reduction in schedule time if more processors and/or memory budget are assigned to this application. The objective is to fairly divide the resources such that the schedule times for the applications are minimized. Results on different embedded applications workloads and under different system resources show the effectiveness of our techniques that were able to reduce the cycle count by 10. 2 % on average compared to an effective technique in the literature.

  1. Z. Ma, C. Wong, S. Himpe, E. Delfosse, F. Catthoor, J. Vounckx, , and G. Deconinck, "Task concurrency analysis and exploration of visual texture decoder on a heterogeneous platform," in Proc. IEEE Workshop on Signal Processing Systems (SiPS), 2003.
  2. Y. -K. Kwok and I. Ahmad, "Benchmarking and comparison of the task graph scheduling algorithms," Journal of Parallel and Distributed Computing, vol. 59, no. 3, 1999.
  3. L. Benini, D. Bertozzi, A. Guerri, and M. Milano, "Allocation and scheduling for mpsoc via decomposition and no-good generation," in Proc. International Joint conferences on Artificial Intelligence (IJCAI), 2005.
  4. R. Neimann and P. Marwedel, "Hardware/software partitioning using integer programming," in Proc. Design Automation and Test in Europe (DATE), 1996.
  5. K. S. Chatha and R. Vemuri, "Hardware-software partitioning and piplined scheduling of transformative applications," IEEE Transactions on VLSI, vol. 10, no. 3, 2002.
  6. P. Panda, N. Dutt, and A. Nicolau, "Memory issues in embedded systems-on-chip: optimization and exploration," Kluwer Academics Publisher, 1999.
  7. P. Panda, N. D. Dutt, and A. Nicolau, "On chip vs off chip memory: the data partitioning problem in embedded processor-based systems," ACM Transactions on Design Automation of Electronic Systems (TODAES), vol. 5, no. 3, 2000.
  8. O. Avissar, R. Barua, and D. Stewart, "An optimal memory allocation scheme for scratch-pad-based embedded systems," ACM Transactions on Embedded Computing Systems, vol. 1, no. 1, 2002.
  9. A. Dominguez, S. Udayakumaran, and R. Barua, "Heap data allocation to scratch-pad memory in embedded systems," Journal of Embedded Computing, 2005.
  10. J. Sjodin and C. V. Platen, "Storage allocation for embedded processors," in Proc. International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES), 2001.
  11. S. -R. Kuang, C. -Y. Chen, and R. -Z. Liao, "Partitioning and pipelined scheduling of embedded systems using integer linear programming," in Proc. International Conference on Parallel and Distributed Systems (ICPADS), 2005.
  12. F. Angiolini, L. Benini, and A. Caprara, "Polynomial-time algorithm for on-chip scratchpad memory partitioning," in Proc. International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES), 2003.
  13. S. Meftali, F. Gharsalli, F. Rousseau, and A. Jerraya, "An optimal memory allocation for application-specific multiprocessor system-onchip," in Proc. International Symposium on Systems Synthesis (ISSS), 2001.
  14. M. Kandemir, J. Ramanujam, and A. Choudhury, "Exploiting shared scratch pad memory space in embedded multiprocessor systems," in Proc. Design Automation Conference (DAC), 2002.
  15. G. Yao, R. Pellizzoni, S. Bak, E. Betti, , and M. Caccamo, "Memory centric scheduling for multicore hard real-time systems," Real-Time Systems, vol. 48, pp. 1–35, 2012.
  16. S. Bakz, G. Yaoz, R. Pellizzoni, and M. Caccamoz, "Memory-aware scheduling of multicore task sets for real-time systems," in Embedded and Real-Time Computing Systems and Applications (RTCSA), pp. 300–309, 2012.
  17. S. Blagodurov, S. Zhuravlev, and A. Fedorova, "Contention-aware scheduling on multicore systems," ACM Trans. Comput. Syst. , vol. 28, no. 4, 2010.
  18. V. G. Vaidya, P. Ranadive, and S. Sah, "Dynamic scheduler for multicore systems," in 2nd International Conference on Software Technology and Engineering(ICSTE), 2010.
  19. J. L. March, J. Sahuquillo, S. Petit, H. Hassan, and J. Duato, "Poweraware scheduling with effective task migration for real-time multicore embedded systems," Concurrency and Computing: practice and experience, 2012.
  20. J. Cong and B. Yuan, "Energy-efficient scheduling on heterogeneous multi-core architectures," in The International Symposium on Low Power Electronics and Design (ISLPED), 2012.
  21. V. Suhendra, C. Raghavan, and T. Mitra, "Integrated scratchpad memory optimization and task scheduling for mpsoc architecture," in Proc. International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES), 2006.
  22. H. Salamy and J. Ramanujam, "An effective solution to task scheduling and memory partitioning for multi-processor system-on-chip," IEEE Transactions on Computer Aided Design, vol. 28, no. 4, 2012.
  23. R. Banakar, S. Steinke, B. Lee, M. Balakrishnan, and P. Marwedel, "Scratchpad memory: design alternative for cache on-chip memory in embedded systems," in Proc. International Conference on Hardware- Software Codesign (CODES), 2002.
  24. M. Kandemir and N. Dutt, "Memory systems and compiler support for mpsoc architectures," Multiprocessor Systems-on-Chips, 2005.
  25. F. Sun, N. Jha, S. Ravi, and A. Raghnunathan, "Synthesis of appication-specific heterogeneous multiprocessor architectures using extensible processors," in Proc. International Conference on VLSI Design, 2005.
  26. J. Chen, C. Yang, T. Kuo, and C. Shih, "Energy-efficient real-time task scheduling in multiprocessor dvs systems," in Proc. Asia and South Pacific Design Automation Conference, 2007.
  27. A. K. Coskun, T. T. Rosing, K. A. Whisnant, and K. Gross, "Static and dynamic temperature-aware scheduling for multiprocessor socs," IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 16(9), no. 1127 – 1140, 2008.
  28. R. Davis and A. Burns, "Priority assignment for global fixed priority pre-emptive scheduling in multiprocessor real-time systems," in Proc. 30th IEEE Real-Time Systems Symposium, 2009.
  29. C. Chou and R. Marculescu, "Run-time task allocation considering user behavior in embedded multiprocessor networks-on-chip," IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 29(1), no. 78 – 91, 2010.
  30. C. Lee, M. Potkonjak, and W. Mangione-Smith, "Mediabench: A tool for evaluating and synthesizing multimedia and communications systems," in Proc. of IEEE International Symposium on Microarchitecture, pp. 330–335, 1997.
  31. L. Xue, O. Ozturk, F. Li, M. Kandemir, and I. Kolcu, "Dynamic partitioning of processing and memory resources in embedded mpsoc architectures," in Design, automation and test in Europe (DATE), 2006.
  32. M. R. Guthaus, J. S. Ringenberg, D. Ernst, T. M. Austin, T. Mudge, and R. B. Brown. , "Mibench: A free, commercially representative embedded benchmark suite," in Proc. IEEE 4th Annual Workshop on Workload Characterization, 2001.
Index Terms

Computer Science
Information Sciences


MPSoC Allocation Scheduling Scratchpad