Skip to main content
Log in

Gem5v: a modified gem5 for simulating virtualized systems

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Virtualization is growing in different areas: from powerful servers in data centers to students’ laptops and even cell phones. It can provide a more efficient use of hardware resources. Virtualization enables multiple virtual machines to run side-by-side in an isolated environment on a physical hardware. Modern processors are enhanced with technologies like Intel-VT and AMD-V that speed up virtual machines. However, there is still room for improving support of hardware for virtualization workloads. Gem5 is an open-source full system simulator capable of simulating a Chip-Multiprocessor with its caches, interconnection network, memory controllers among others. In its current state, gem5 does not support virtualized workloads. In this paper, we present a modified version of gem5, named gem5v, that simulates the behavior of a virtualization layer and can simulate virtual machines. We test this simulator in different scenarios using Parsec, Splash, MapReduce (Phoenix), SPEC and EEMBC benchmarks and compare its measured runtime with real systems. Results show 1–9 % difference between the simulated system and two virtualization softwares on a real hardware, namely KVM and VMware ESX. The comparison of vCPU overhead in VMware ESX and gem5v shows between 0.1 and 9 % difference.

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
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12

Similar content being viewed by others

Notes

  1. POSIX threads.

  2. We would like to submit it to the review board of gem5 so it could be part of the mainline.

  3. Located in configs/example.

  4. As we do not have a license for Simics, we are unable to do tests for comparison of Virtual-GEMS and gem5v.

  5. That is why we have used the \(@\) notation.

  6. According to Table 4, d in ffd means dedup.

References

  1. AMD-V. http://www.amd.com/virtualization. Accessed on Nov 2012. Accessed 5 May 2014

  2. Gartner: estimate of virtualized workloads. http://gartner.com/it/page.jsp?id=1211813. Accessed 1 May 2014

  3. Gem5. http://gem5.org. Accessed 5 May 2014

  4. [gem5-users] Running Xen in gem5. http://www.mail-archive.com/gem5-users@gem5.org/msg00367.html. Accessed 1 Jan 2014

  5. How does it take to make context switch. http://blog.tsunanet.net/2010/11/how-long-does-it-take-to-make-context.html. Accessed 1 May 2014

  6. Intel Xeon. http://www.intel.com/content/www/us/en/servers/server-products.html. Accessed on Nov 2012. Accessed 1 May 2014

  7. Parsec 2.1 for m5. http://www.cs.utexas.edu/cart/parsec_m5. Accessed 5 May 2014

  8. Splash 2. http://www-flash.stanford.edu/apps/SPLASH. Accessed 1 Jan 2014

  9. VMware. http://vmware.com. Accessed 5 May 2014

  10. Apparao P, Iyer R, Newell D (2008) Implications of cache asymmetry on server consolidation performance. In: IEEE international symposium on workload characterization, pp 24–32

  11. Bhadauria M, Weaver VM, McKee SA (2009) Understanding PARSEC performance on contemporary CMPs. In: IEEE international symposium on workload characterization, pp 98–107

  12. Bienia C, Li K (2009) Parsec 2.0: a new benchmark suite for chip-multiprocessors. In: Workshop on modeling, benchmarking and simulation

  13. Binkert N, Beckmann BM, Black G, Reinhardt S, Saidi A, Basu A, Hestness J, Hower D, Krishna T, Sardashti S, Sen R, Sewell K, Shoaib M, Vaish N, Hill M, Wood D (2011) The gem5 simulator. SIGARCH Comput Archit News 39(2):1–7

    Article  Google Scholar 

  14. Calheiros RN, Ranjan R, Beloglazov A, De Rose CAF, Buyya R (2010) CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Softw Pract Exp 41(1):23–50

    Article  Google Scholar 

  15. Dall C, Andrus J, Hof AV, Laadan O, Nieh J (2012) The design, implementation, and evaluation of cells: a virtual smartphone architecture. ACM Trans Comput Syst 30(3):1–31

    Article  Google Scholar 

  16. Gal-On S, Levy M Exploring CoreMark—a benchmark maximizing simplicity and efficacy. EEMBC Whitepaper. http://www.eembc.org/techlit/coremark-whitepaper.pdf

  17. Garcia-Guirado A, Fernandez-Pascual R, Garcia J (2010) Analyzing cache coherence protocols for server consolidation. In: International symposium on computer architecture and high performance computing, pp 191–198

  18. Garcia-Guirado A, Fernandez-Pascual R, Garcia JM (2009) Virtual-GEMS: an infrastructure to simulate virtual machines. In: International workshop on modeling, benchmarking and simulation

  19. Garcia-Guirado A, Fernandez-Pascual R, Ros A, Garcia J (2011) Energy-efficient cache coherence protocols in chip-multiprocessors for server consolidation. In: International conference on parallel processing, pp 51–62

  20. Henning JL (2006) SPEC CPU2006 benchmark descriptions. ACM SIGARCH Comput Archit News 34(4):1–17

    Article  MathSciNet  Google Scholar 

  21. Iyer R, Zhao L, Guo F, Illikkal R, Makineni S, Newell D, Solihin Y, Hsu L, Reinhardt S (2007) QoS policies and architecture for cache/memory in CMP platforms. In: ACM SIGMETRICS international conference on measurement and modeling of computer systems, pp 1–12. ACM request permissions

  22. Jin X, Chen H, Wang X, Wang Z, Wen X, Luo Y, Li X (2009) A simple cache partitioning Approach in a virtualized environment. In: IEEE international symposium on parallel and distributed processing with applications, pp 519–524

  23. Kim D, Ahn J, Kim J, Huh J (2010) Subspace snooping: filtering snoops with operating system support. In: International conference on parallel architectures and compilation techniques, pp 111–122, ACM

  24. Kim D, Kim H, Huh J (2010) Virtual snooping: filtering snoops in virtualized multi-cores. In: IEEE/ACM international symposium on microarchitecture, pp 459–470

  25. Kivity A, Kamay Y, Laor D, Lublin U, Liguori A (2007) kvm: the Linux virtual machine monitor. In: Linux symposium, pp 225–230

  26. Koller R, Verma A, Rangaswami R (2011) Estimating application cache requirement for provisioning caches in virtualized systems. In: IEEE annual international symposium on modelling, analysis, and simulation of computer and telecommunication systems, pp 55–62. IEEE Computer Society

  27. Magnusson PS, Christensson M, Eskilson J, Forsgren D, Hallberg G, Hogberg J, Larsson F, Moestedt A, Werner B (2002) Simics: a full system simulation platform. Computer 35(2):50–58

    Article  Google Scholar 

  28. Martin MMK, Sorin DJ, Beckmann BM, Marty MR, Xu M, Alameldeen AR, Moore KE, Hill MD, Wood DA (2005) Multifacet’s general execution-driven multiprocessor simulator (GEMS) toolset. SIGARCH Comput Archit News 33(4):92–99

    Article  Google Scholar 

  29. McDougall R, Anderson J (2010) Virtualization performance: perspectives and challenges ahead. SIGOPS Oper Syst Rev 44(4):40–56

    Article  Google Scholar 

  30. Srikantaiah S, Kandemir M, Wang Q (2009) Sharp control: controlled shared cache management in chip multiprocessors. In: IEEE/ACM international symposium on microarchitecture, pp 517–528, IEEE

  31. Talbot J, Yoo RM, Kozyrakis C (2011) Phoenix++: modular MapReduce for shared-memory systems. In: MapReduce ’11: Proceedings of the 2nd international workshop on MapReduce and its applications, pp 9–16. ACM request permissions

  32. Uhlig R, Neiger G, Rodgers D, Santoni A, Martins F, Anderson A, Bennett S, Kagi A, Leung F, Smith L (2005) Intel virtualization technology. Computer 38(5):48–56

    Article  Google Scholar 

  33. Varanasi P, Heiser G (2011) Hardware-supported virtualization on ARM. In: Second Asia-Pacific workshop on systems, pp 1–5, ACM

  34. Woo S, Ohara M, Torrie E, Singh J, Gupta A (1995) The SPLASH-2 programs: characterization and methodological considerations. In: International symposium on computer architecture, pp 24–36

Download references

Acknowledgments

This research was in part supported by a Grant from IPM (No. CS1393-4-17).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Siamak Mohammadi.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Nikounia, S.H., Mohammadi, S. Gem5v: a modified gem5 for simulating virtualized systems. J Supercomput 71, 1484–1504 (2015). https://doi.org/10.1007/s11227-014-1375-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-014-1375-7

Keywords

Navigation