Skip to main content

Advertisement

Log in

GPUCloudSim: an extension of CloudSim for modeling and simulation of GPUs in cloud data centers

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

Abstract

Recent years have witnessed an increasing growth in the usage of GPUs in cloud data centers. It is known that conventional virtualization techniques are not directly applicable to GPUs, making it a challenge to effectively take advantage of virtualization benefits. API remoting, full, para and hardware-assisted virtualization methods are adopted to empower VMs with GPU capabilities. With such a diversity in approaches, there is a need for a simulation environment to study the effectiveness of GPU virtualization techniques and evaluate GPU provisioning and scheduling policies in cloud data centers. In order to model and simulate GPU-enabled VMs in cloud data centers, this work proposes and describes a simulator architecture implemented as an extension of CloudSim. The extension eases up conducting experimental studies that otherwise need to be carried out in real cloud infrastructures. It includes models to simulate interference among co-running applications, the overhead of virtualization and power consumption of GPUs. To demonstrate the usefulness of our extension, we study NVIDIA GRID, a hardware-assisted GPU virtualization solution. We show that for situations where the number of VMs outperforms the number of hosts, the first-fit VM placement of VMware Horizon may not be effective. Instead, we suggest a first-fit increasing VM placement algorithm which increases the acceptance rate by 59%, shortens makespan by 25% and saves energy by 21%.

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
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20

Similar content being viewed by others

Notes

  1. Infrastructure as a service.

  2. Platform as a service.

  3. Software as a service.

  4. Container as a service.

  5. Dynamic voltage and frequency scaling.

  6. Dynamic network shutdown.

  7. Single instruction multiple data.

  8. Streaming multiprocessor.

  9. Virtual desktop infrastructure.

  10. Virtual GPU.

  11. Instructions per cycle.

References

  1. Amazon EC2 instance types—Amazon web services (AWS). https://aws.amazon.com/ec2/instance-types/. Accessed 10 Oct 2018

  2. Graphics processing unit (GPU)—Google cloud platform. https://cloud.google.com/gpu/. Accessed 10 Oct 2018

  3. Horizon—virtual desktop infrastructure. https://www.vmware.com/products/horizon.html. Accessed 10 Oct 2018

  4. MSI global—power supply calculator. https://www.msi.com/power-supply-calculator/. Accessed 10 Oct 2018

  5. NVIDIA GPUs in azure: the N-series VMs. http://gpu.azure.com/. Accessed 10 Oct 2018

  6. ObjectAid UML explorer. http://www.objectaid.com/. Accessed 10 Oct 2018

  7. Top500 supercomputer sites. https://www.top500.org/. Accessed 25 Nov 2017

  8. vSphere | server virtualization software. https://www.vmware.com/products/vsphere.html. Accessed 10 Oct 2018

  9. Arabnia H (1998) The transputer family of products and their applications in building a high performance computer. In: Belzer J, Holzman AG, Kent A (eds) Encyclopedia of computer science and technology, vol 39. CRC Press, p 283

  10. Arabnia H, Oliver M (1989) A transputer network for fast operations on digitised images. Comput Graph Forum 8(1):3–11

    Article  Google Scholar 

  11. Arabnia HR (1990) A parallel algorithm for the arbitrary rotation of digitized images using process-and-data-decomposition approach. J Parallel Distrib Comput 10(2):188–192

    Article  Google Scholar 

  12. Arabnia HR (1996) Distributed stereo-correlation algorithm. Comput Commun 19(8):707–711

    Article  Google Scholar 

  13. Arabnia HR, Bhandarkar SM (1996) Parallel stereocorrelation on a reconfigurable multi-ring network. J Supercomput 10(3):243–269

    Article  MATH  Google Scholar 

  14. Arabnia HR, Oliver MA (1986) Fast operations on raster images with SIMD machine architectures. Comput Graph Forum 5(3):179–188

    Article  Google Scholar 

  15. Arabnia HR, Taha TR (1998) A parallel numerical algorithm on a reconfigurable multi-ring network. Telecommun Syst 10(1–2):185–202

    Article  Google Scholar 

  16. Bakhoda A, Yuan GL, Fung WW, Wong H, Aamodt TM (2009) Analyzing CUDA workloads using a detailed GPU simulator. In: International Symposium on Performance Analysis of Systems and Software ISPASS, IEEE, pp 163–174

  17. Beloglazov A, Abawajy J, Buyya R (2012) Energy-aware resource allocation heuristics for efficient management of data centers for cloud computing. Future Gener Comput Syst 28(5):755–768

    Article  Google Scholar 

  18. Calheiros RN, Ranjan R, Beloglazov A, De Rose CA, Buyya R (2011) 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 

  19. Cook S (2012) CUDA programming: a developer’s guide to parallel computing with GPUs. Newnes

  20. NVIDIA Corporation (2018) CUDA C programming guide. http://docs.nvidia.com/cuda/cuda-c-programming-guide/. Accessed 10 Oct 2018

  21. Garg SK, Buyya R (2011) Networkcloudsim: modelling parallel applications in cloud simulations. In: 4th International Conference on Utility and Cloud Computing, IEEE, pp 105–113

  22. Gong X, Ubal R, Kaeli D (2017) Multi2Sim Kepler: a detailed architectural GPU simulator. In: International Symposium on Performance Analysis of Systems and Software (ISPASS), IEEE, pp 153–154

  23. Guan H, Yao J, Qi Z, Wang R (2015) Energy-efficient SLA guarantees for virtualized GPU in cloud gaming. IEEE Trans Parallel Distrib Syst 26(9):2434–2443

    Article  Google Scholar 

  24. Herrera A (2014) NVIDIA GRID: graphics accelerated VDI with the visual performance of a workstation. NVIDIA

  25. Hong CH, Spence I, Nikolopoulos DS (2017) GPU virtualization and scheduling methods: a comprehensive survey. ACM Comput Surv (CSUR) 50(3):35

    Article  Google Scholar 

  26. Hsu HC, Lee CR (2016) G-KVM: a full GPU virtualization on KVM. In: International Conference on Computer and Information Technology (CIT), IEEE, pp 545–552

  27. Hu L, Che X, Xie Z (2013) GPGPU cloud: a paradigm for general purpose computing. Tsinghua Sci Technol 18(1):22–23

    Article  Google Scholar 

  28. Hu Q, Shu J, Fan J, Lu Y (2016) Run-time performance estimation and fairness-oriented scheduling policy for concurrent GPGPU applications. In: 45th International Conference on Parallel Processing (ICPP), pp 57–66

  29. Jun HW, Hwang CH, Kim K (2014) An extension of CloudSim toolkits for GPGPU-based cloud computing simulation. Information 17:5849–5854

    Google Scholar 

  30. Kliazovich D, Bouvry P, Khan SU (2012) GreenCloud: a packet-level simulator of energy-aware cloud computing data centers. J Supercomput 62(3):1263–1283

    Article  Google Scholar 

  31. Leng J, Hetherington T, ElTantawy A, Gilani S, Kim NS, Aamodt TM, Reddi VJ (2013) GPUWattch: enabling energy optimizations in GPGPUs. SIGARCH Comput Archit News 41(3):487–498

    Article  Google Scholar 

  32. Lu Q, Yao J, Qi Z, He B et al (2016) Fairness-efficiency allocation of CPU-GPU heterogeneous resources. IEEE Trans Serv Comput 1:1

    Article  Google Scholar 

  33. Lv Z, Tian K (2014) KVMGT: a full GPU virtualization solution. KVM Forum

  34. Mei X, Yung LS, Zhao K, Chu X (2013) A measurement study of GPU DVFS on energy conservation. In: Proceedings of the Workshop on Power-Aware Computing and Systems, ACM, p 10

  35. Núñez A, Vázquez-Poletti JL, Caminero AC, Castañé GG, Carretero J, Llorente IM (2012) iCanCloud: a flexible and scalable cloud infrastructure simulator. J Grid Comput 10(1):185–209

    Article  Google Scholar 

  36. NVIDIA’s next generation CUDA compute architecture: Kepler GK110 Whitepaper, NVIDIA Corporation (2012)

  37. NVIDIA Corporation, NVIDIA GRID K1 graphics board (2013)

  38. NVIDIA Corporation, NVIDIA GRID K2 graphics board (2013)

  39. NVIDIA Corporation, GRID virtual GPU—user guide (2016)

  40. Piraghaj SF, Dastjerdi AV, Calheiros RN, Buyya R (2017) ContainerCloudSim: an environment for modeling and simulation of containers in cloud data centers. Softw Pract Exp 47(4):505–521

    Article  Google Scholar 

  41. Qouneh A, Liu M, Li T (2015) Optimization of resource allocation and energy efficiency in heterogeneous cloud data centers. In: 44th International Conference on Parallel Processing (ICPP), IEEE, pp 1–10

  42. Tian K, Dong Y, Cowperthwaite D (2014) A full GPU virtualization solution with mediated pass-through. In: USENIX Annual Technical Conference, pp 121–132

  43. Ubal R, Jang B, Mistry P, Schaa D, Kaeli D (2012) Multi2Sim: a simulation framework for CPU–GPU computing. In: 21st International Conference on Parallel Architectures and Compilation Techniques (PACT), IEEE pp 335–344

  44. Yu Z, Eeckhout L, Goswami N, Li T, John L, Jin H, Xu C (2013) Accelerating GPGPU architecture simulation. SIGMETRICS Perform Eval Rev 41(1):331–332

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mahmoud Momtazpour.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Siavashi, A., Momtazpour, M. GPUCloudSim: an extension of CloudSim for modeling and simulation of GPUs in cloud data centers. J Supercomput 75, 2535–2561 (2019). https://doi.org/10.1007/s11227-018-2636-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-018-2636-7

Keywords

Navigation