Skip to main content
Log in

Parallel application sampling for accelerating MPSoC simulation

  • Published:
Design Automation for Embedded Systems Aims and scope Submit manuscript

Abstract

Multi-processor system-on-chip (MPSoC) simulators are many orders of magnitude slower than the hardware they simulate due to increasing architectural complexity. In this paper, we propose a new application sampling technique to accelerate the simulation of MPSoC design space exploration (DSE). The proposed technique dynamically combines simultaneously executed phases, thus generating a sampling unit. This technique accelerates the simulation by allowing the repeated combinations of parallel phases to be skipped. A complementary technique, called cluster synthesis, is also proposed to improve the simulation acceleration when the number of possible phase combinations increases. Our experimental results show that this technique can accelerate the simulation up to a factor of 800 with a relatively small estimation error.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Ascia G, Catania V, Nuovo AGD, Palesi M, Patti D (2007) Efficient design space exploration for application specific systems-on-a-chip. J Syst Archit 53

  2. Atitallah RB, Niar S, Meftali S, Dekeyser J-L (2007) An MPSoC performance estimation framework using transaction level modeling. In: The IEEE international conference on embedded and real-time computing systems and applications (RTCSA), August 2007

  3. Benini L, Bertozzi D, Bogliolo A, Menichelli F, Olivieri M (2005) MPARM: Exploring the multi-processor SoC design space with SystemC. J VLSI Signal Process 41

  4. Biesbrouck MV, Calder B, Eeckhout L (2006) Efficient sampling startup for simpoint. IEEE Micro Mag 26

  5. Biesbroucky MV, Eeckhout L, Calder B (2006) Considering all starting points for simultaneous multithreading simulation. In: The IEEE international symposium on performance analysis of systems and software (ISPASS), March 2006

  6. Biesbroucky MV, Sherwoodz T, Caldery B (2004) A co-phase matrix to guide simultaneous multithreading simulation. In: The IEEE international symposium on performance analysis of systems and software (ISPASS), March 2004

  7. Chang C, Wawrzynek J, Brodersen RW (2005) Bee2: A high-end reconfigurable computing system. IEEE Des Test 22

  8. Chung E, Nurvitadhi E, Hoe J, Mai K, Falsafi B (2008) Accelerating architectural-level, full-system multiprocessor simulations using fpgas. In: International symposium on field-programmable gate arrays

  9. Donlin A (2004) Transaction level: flows and use models. In: The international conference on hardware/software codesign and system synthesis (CODES+ISSS), September 2004

  10. Ekman M, Stenstrom P (2005) Enhancing multiprocessor architecture simulation speed using matched-pair comparison. In: The IEEE international symposium on performance analysis of systems and software (ISPASS), March 2005

  11. Givargis T, Vahid F, Henkel J (2001) System-level exploration for Pareto-optimal configurations in parameterized system-on-a-chip. In: The IEEE/ACM international conference on computer-aided design (ICCAD), November 2001

  12. Goodwin D, Rowen C, Martin G (2007) Configurable multi-processor platforms for next generation embedded systems. In: Proceedings of the 2007 conference on Asia South Pacific design automation (ASP-DAC), January 2007

  13. Guthaus MR, Ringenberg JS, Ernst D, Austin TM, Mudge T, Brown RB (2001) MiBench: A free, commercially representative embedded benchmark suite. In: The 4th IEEE annual workshop on workload characterization (WWC), December 2001

  14. Hamerly G, Perelman E, Calder B (2004) How to use simpoint to pick simulation. SIGMETRICS Perform Eval Rev

  15. Hardavellas N, Somogyi S, Wenisch TF, Wunderlich RE, Chen S, Kim J, Falsafi B, Hoe JC, Nowatzyk AG (2004) Simflex: a fast, accurate, flexible full-system simulation framework for performance evaluation of server architecture. SIGMETRICS Perform Eval Rev 31

  16. Kanaujia S, Papazian IE, Chamberlain J, Baxter J (2006) FastMP: A multi-core simulation methodology. In: The annual workshop on modeling, benchmarking and simulation (MOBS), June 2006

  17. Karkhanis TS, Smith JE (2007) Automated design of application specific superscalar processors: an analytical approach. In: ISCA ’07: Proceedings of the 34th annual international symposium on computer architecture, Association for Computing Machinery, June 2007, pp 402–411

  18. KleinOsowski A, Flynn J, Meares N, Lilja DJ (2001) Adapting the SPEC 2000 benchmark suite for simulation-based computer architecture research

  19. Lau J, Perelman E, Hamerly G, Sherwood T, Calder B (2005) Motivation for variable length intervals and hierarchical phase behavior. In: The IEEE international symposium on performance analysis of systems and software (ISPASS), March 2005

  20. Namkung J, Kim D, Gupta R, Bouget IKJ, Dulong C (2006) Phase guided sampling for efficient parallel application simulation. In: The 4th international conference on hardware/software codesign and system synthesis (CODES+ISSS), October 2006

  21. Niar S, Inglart N, Chaker M, Hanafi S, Benameur N (2007) FACSE: A framework for architecture and compilation space exploration. In: The IEEE international conference on design and technology of integrated systems in nanoscale era (DTIS), September 2007

  22. Nussbaum S, Smith JE (2002) Statistical simulation of symmetric multiprocessor systems. In: The 35th annual simulation symposium (Ss), April 2002

  23. Schnerr J, Bringmann O, Rosenstiel W (2005) Cycle accurate binary translation for simulation acceleration in rapid prototyping of SoCs. In: The design, automation and test in Europe (DATE), March 2005

  24. Sherwood T, Perelman E, Calder B (2001) Basic block distribution analysis to find periodic behavior and simulation points in applications. In: International conference on parallel architectures and compilation techniques, September 2001

  25. Sherwood T, Perelman E, Hamerly G, Calder B (2002) Automatically characterizing large scale program behavior. In: The 10th international conference on architectural support for programming languages and operating systems (ASPLOS), October 2002

  26. Tawk M, Ibrahim KZ, Niar S (2007) Adaptive sampling for efficient MPSoC architecture simulation. In: The 15th of the IEEE international symposium on modeling analysis, and simulation of computer and telecommunication systems (MASCOTS), October 2007

  27. Tawk M, Ibrahim KZ, Niar S (2008) Multi-granularity sampling for simulating concurrent heterogeneous applications. In: Proceedings of the 2008 international conference on compilers, architectures and synthesis for embedded systems (CASES08)

  28. Valle PGD, Atienza D, Magan I, Flores JG, Perez EA, Mendias JM, Benini L, Micheli GD (2006) Architectural exploration of MPSoC designs based on an FPGA emulation framework. In: The conference on design of circuits and integrated systems (DCIS), December 2006

  29. Wunderlich RE, Wenisch TF, Falsafi B, Hoe JC (2003) Smarts: Accelerating microarchitecture simulation via rigorous statistical sampling. In: The 30th international symposium on computer architecture (ISCA), June 2003

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Smail Niar.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tawk, M., Ibrahim, K.Z. & Niar, S. Parallel application sampling for accelerating MPSoC simulation. Des Autom Embed Syst 14, 367–387 (2010). https://doi.org/10.1007/s10617-010-9064-0

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10617-010-9064-0

Keywords

Navigation