Enabling GPU Virtualization in Cloud Environments

Sergio Iserte, Francisco J. Clemente-Castelló, Adrián Castelló, Rafael Mayo, Enrique S. Quintana-Ortí

Abstract

The use of accelerators, such as graphics processing units (GPUs), to reduce the execution time of compute-intensive applications has become popular during the past few years. These devices increment the computational power of a node thanks to their parallel architecture. This trend has led cloud service providers as Amazon or middlewares such as OpenStack to add virtual machines (VMs) including GPUs to their facilities instances. To fulfill these needs, the guest hosts must be equipped with GPUs which, unfortunately, will be barely utilized if a non GPU-enabled VM is running in the host. The solution presented in this work is based on GPU virtualization and shareability in order to reach an equilibrium between service supply and the applications’ demand of accelerators. Concretely, we propose to decouple real GPUs from the nodes by using the virtualization technology rCUDA. With this software configuration, GPUs can be accessed from any VM avoiding the need of placing a physical GPUs in each guest host. Moreover, we study the viability of this approach using a public cloud service configuration, and we develop a module for OpenStack in order to add support for the virtualized devices and the logic to manage them. The results demonstrate this is a viable configuration which adds flexibility to current and well-known cloud solutions.

References

  1. Amazon Web Services (2015). Amazon web services. http://aws.amazon.com. Accessed: 2015-10.
  2. Becchi, M., Sajjapongse, K., Graves, I., Procter, A., Ravi, V., and Chakradhar, S. (2012). A virtual memory based runtime to support multi-tenancy in clusters with GPUs. In 21st Int. symp. on High-Performance Parallel and Distributed Computing.
  3. Castelló, A., Duato, J., Mayo, R., Pen˜a, A. J., QuintanaOrtí, E. S., Roca, V., and Silla, F. (2014). On the use of remote GPUs and low-power processors for the acceleration of scientific applications. InThe Fourth Int. Conf. on Smart Grids, Green Communications and IT Energy-aware Technologies, pages 57-62, France.
  4. Castelló, A., Mayo, R., Planas, J., and Quintana-Ortí, E. S. (2015a). Exploiting task-parallelism on GPU clusters via OmpSs and rCUDA virtualization. In I IEEE Int. Workshop on Reengineering for Parallelism in Heterogeneous Parallel Platforms, Helsinki (Finland).
  5. Castelló, A., Pen˜a, A. J., Mayo, R., Balaji, P., and QuintanaOrtí, E. S. (2015b). Exploring the suitability of remote GPGPU virtualization for the OpenACC programming model using rCUDA. In IEEE Int. Conference on Cluster Computing, Chicago, IL (USA).
  6. Diab, K. M., Rafique, M. M., and Hefeeda, M. (2013). Dynamic sharing of GPUs in cloud systems. In Parallel and Distributed Processing Symp. Workshops & PhD Forum, 2013 IEEE 27th International.
  7. Giunta, G., Montella, R., Agrillo, G., and Coviello, G. (2010). A GPGPU transparent virtualization component for high performance computing clouds. In EuroPar, Parallel Processing, pages 379-391. Springer.
  8. Iserte, S., Castell ó, A., Mayo, R., Quintana-Ortí, E. S., Rean˜o, C., Prades, J., Silla, F., and Duato, J. (2014). SLURM support for remote GPU virtualization: Implementation and performance study. In Int. Symposium on Computer Architecture and High Performance Computing, Paris, France.
  9. Jun, T. J., Van Quoc Dung, M. H. Y., Kim, D., Cho, H., and Hahm, J. (2014). GPGPU enabled HPC cloud platform based on OpenStack.
  10. Kawai, A., Yasuoka, K., Yoshikawa, K., and Narumi, T. (2012). Distributed-shared CUDA: Virtualization of large-scale GPU systems for programmability and reliability. In The Fourth Int. Conf. on Future Computational Technologies and Applications, pages 7-12.
  11. Kim, J., Seo, S., Lee, J., Nah, J., Jo, G., and Lee, J. (2012). SnuCL: an OpenCL framework for heterogeneous CPU/GPU clusters. In Int. Conf. on Supercomputing (ICS).
  12. Liu, Y., Schmidt, B., Liu, W., and Maskell, D. L. (2010). CUDA-MEME: Accelerating motif discovery in biological sequences using CUDA-enabled graphics processing units. Pattern Recognition Letters, 31(14).
  13. NVIDIA Corp. CUDA API Reference Manual Version 6.5.
  14. OpenStack Foundation (2015). OpenStack. http://www.openstack.org. Accessed: 2015-10.
  15. Pen˜a, A. J. (2013). Virtualization of accelerators in high performance clusters. PhD thesis, Universitat Jaume I, Castellon, Spain.
  16. Pen˜a, A. J., Rean˜o, C., Silla, F., Mayo, R., Quintana-Ortí, E. S., and Duato, J. (2014). A complete and efficient CUDA-sharing solution for HPC clusters. Parallel Computer, 40(10).
  17. Shi, L., Chen, H., Sun, J., and Li, K. (2012). vCUDA: GPU-accelerated high-performance computing in virtual machines. IEEE Trans. on Comput., 61(6).
  18. Xiao, S., Balaji, P., Zhu, Q., Thakur, R., Coghlan, S., Lin, H., Wen, G., Hong, J., and Feng, W. (2012). VOCL: An optimized environment for transparent virtualization of graphics processing units. In Innovative Parallel Computing. IEEE.
  19. Younge, A. J., Walters, J. P., Crago, S., and Fox, G. C. (2013). Enabling high performance computing in cloud infrastructure using virtualized GPUs.
Download


Paper Citation


in Harvard Style

Iserte S., Clemente-Castelló F., Castelló A., Mayo R. and Quintana-Ortí E. (2016). Enabling GPU Virtualization in Cloud Environments . In Proceedings of the 6th International Conference on Cloud Computing and Services Science - Volume 2: CLOSER, ISBN 978-989-758-182-3, pages 249-256. DOI: 10.5220/0005780502490256


in Bibtex Style

@conference{closer16,
author={Sergio Iserte and Francisco J. Clemente-Castelló and Adrián Castelló and Rafael Mayo and Enrique S. Quintana-Ortí},
title={Enabling GPU Virtualization in Cloud Environments},
booktitle={Proceedings of the 6th International Conference on Cloud Computing and Services Science - Volume 2: CLOSER,},
year={2016},
pages={249-256},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005780502490256},
isbn={978-989-758-182-3},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 6th International Conference on Cloud Computing and Services Science - Volume 2: CLOSER,
TI - Enabling GPU Virtualization in Cloud Environments
SN - 978-989-758-182-3
AU - Iserte S.
AU - Clemente-Castelló F.
AU - Castelló A.
AU - Mayo R.
AU - Quintana-Ortí E.
PY - 2016
SP - 249
EP - 256
DO - 10.5220/0005780502490256