Enabling CUDA acceleration within virtual machines using rCUDA

J. Duato, Antonio J. Peña, F. Silla, J. C. Fernández, R. Mayo, E. S. Quintana‐Ortí
{"title":"Enabling CUDA acceleration within virtual machines using rCUDA","authors":"J. Duato, Antonio J. Peña, F. Silla, J. C. Fernández, R. Mayo, E. S. Quintana‐Ortí","doi":"10.1109/HiPC.2011.6152718","DOIUrl":null,"url":null,"abstract":"The hardware and software advances of Graphics Processing Units (GPUs) have favored the development of GPGPU (General-Purpose Computation on GPUs) and its adoption in many scientific, engineering, and industrial areas. Thus, GPUs are increasingly being introduced in high-performance computing systems as well as in datacenters. On the other hand, virtualization technologies are also receiving rising interest in these domains, because of their many benefits on acquisition and maintenance savings. There are currently several works on GPU virtualization. However, there is no standard solution allowing access to GPGPU capabilities from virtual machine environments like, e.g., VMware, Xen, VirtualBox, or KVM. Such lack of a standard solution is delaying the integration of GPGPU into these domains. In this paper, we propose a first step towards a general and open source approach for using GPGPU features within VMs. In particular, we describe the use of rCUDA, a GPGPU (General-Purpose Computation on GPUs) virtualization framework, to permit the execution of GPU-accelerated applications within virtual machines (VMs), thus enabling GPGPU capabilities on any virtualized environment. Our experiments with rCUDA in the context of KVM and VirtualBox on a system equipped with two NVIDIA GeForce 9800 GX2 cards illustrate the overhead introduced by the rCUDA middleware and prove the feasibility and scalability of this general virtualizing solution. Experimental results show that the overhead is proportional to the dataset size, while the scalability is similar to that of the native environment.","PeriodicalId":122468,"journal":{"name":"2011 18th International Conference on High Performance Computing","volume":"114 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-12-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"80","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 18th International Conference on High Performance Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HiPC.2011.6152718","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 80

Abstract

The hardware and software advances of Graphics Processing Units (GPUs) have favored the development of GPGPU (General-Purpose Computation on GPUs) and its adoption in many scientific, engineering, and industrial areas. Thus, GPUs are increasingly being introduced in high-performance computing systems as well as in datacenters. On the other hand, virtualization technologies are also receiving rising interest in these domains, because of their many benefits on acquisition and maintenance savings. There are currently several works on GPU virtualization. However, there is no standard solution allowing access to GPGPU capabilities from virtual machine environments like, e.g., VMware, Xen, VirtualBox, or KVM. Such lack of a standard solution is delaying the integration of GPGPU into these domains. In this paper, we propose a first step towards a general and open source approach for using GPGPU features within VMs. In particular, we describe the use of rCUDA, a GPGPU (General-Purpose Computation on GPUs) virtualization framework, to permit the execution of GPU-accelerated applications within virtual machines (VMs), thus enabling GPGPU capabilities on any virtualized environment. Our experiments with rCUDA in the context of KVM and VirtualBox on a system equipped with two NVIDIA GeForce 9800 GX2 cards illustrate the overhead introduced by the rCUDA middleware and prove the feasibility and scalability of this general virtualizing solution. Experimental results show that the overhead is proportional to the dataset size, while the scalability is similar to that of the native environment.
在使用rCUDA的虚拟机中启用CUDA加速
图形处理单元(gpu)的硬件和软件的进步有利于GPGPU (gpu上的通用计算)的发展及其在许多科学,工程和工业领域的采用。因此,gpu越来越多地被引入高性能计算系统和数据中心。另一方面,虚拟化技术在这些领域也受到越来越多的关注,因为它们在获取和维护方面有许多好处。目前有一些关于GPU虚拟化的工作。然而,没有标准的解决方案允许从虚拟机环境(如VMware、Xen、VirtualBox或KVM)访问GPGPU功能。这种标准解决方案的缺乏延迟了GPGPU在这些领域的集成。在本文中,我们提出了在vm中使用GPGPU特性的通用和开源方法的第一步。特别是,我们描述了rCUDA的使用,GPGPU (gpu上的通用计算)虚拟化框架,允许在虚拟机(vm)中执行gpu加速的应用程序,从而使GPGPU能够在任何虚拟化环境中运行。我们在配备两张NVIDIA GeForce 9800 GX2卡的系统上,在KVM和VirtualBox环境下对rCUDA进行了实验,说明了rCUDA中间件带来的开销,并证明了这种通用虚拟化解决方案的可行性和可扩展性。实验结果表明,开销与数据集大小成正比,而可扩展性与本机环境相似。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信