GPU通用计算虚拟化方法研究

被引量 : 22次 | 上传用户:yyuan
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
作为云计算的关键性基础设施,系统级虚拟机技术是当前计算机体系结构领域的研究热点之一。系统级虚拟机技术成功的将许多物理设备抽象成内存或硬盘中的数据结构,如网卡、硬盘、内存等,但GPU(Graphic Processing Unit,图形处理单元)从来不曾被完善的虚拟化。这其中一个主要原因在于GPU缺乏统一的硬件接口和开放的体系规范。在实践中,学术界和工业界选择在协议栈的更高层——用户API(Application Programming Interface,应用程序编程接口)层进行虚拟化,一些针对传统图形API的虚拟化工作已取得阶段性成果。CUDA (ComputeUnified Device Architecture)是一套崭新的GPU应用编程API,专注于通用计算(General-Purpose computation)而不是图形应用,是目前事实上的通用计算工业标准。它向程序员提供了直接控制GPU执行并行计算的能力,而不再依赖于传统图形API如OPENGL。CUDA框架的出现为系统级虚拟化技术带来了新的问题:已有的针对图形API的虚拟化工具对虚拟化CUDA没有任何帮助,运行在虚拟机中的应用程序无法调用CUDA API,从而不能利用GPU先进的并行加速功能。为了解决这个问题,本文提出并实现了首个针对通用计算的虚拟化解决方案——vCUDA(virtual CUDA)。vCUDA允许虚拟机中的应用程序访问位于虚拟机外部的通用计算资源,向它们提供GPU通用计算能力,对加速虚拟机环境下的高性能计算具有重要意义。vCUDA的设计和实现有四个主要的方面:API重定向(API remoting)、懒惰RPC(lazy RPC)、虚拟机专用RPC系统VMRPC(VirtualMachine Remote Procedure Call)和虚拟机高级特性支持。API重定向是指在用户层拦截API接口,将其参数转发到远程服务器,在远程服务器端完成实际计算工作,最后将计算结果返回用户。由于采用了在动态库中拦截和重定向API的技术,vCUDA在CUDA程序运行过程中实时进行虚拟化,不要求修改程序源码、不重新编译、不改变操作系统,实现了完全的二进制兼容,对程序员完全透明。针对NVIDIA官方样例程序和第三方CUDA应用的测试表明:vCUDA在虚拟机内实现了CUDA的全部功能,在远程服务器中完整而准确地模拟了CUDA的内部语义,所有实验均得到了与非虚拟化条件下相同的执行结果。由于CUDA应用可能涉及成千上万个API,针对每个API发送RPC将导致极大的性能开销。vCUDA借鉴了图形项目中延迟更新(lazy update)的优化思路,采用了懒惰RPC的方法。尽可能地推迟RPC的发生时刻,通过累积、过滤、合并上层调用,合理确定发送RPC的时机,将连续的API打包一次性发送,有效的提高了系统性能。相关实验显示,懒惰RPC可将RPC次数减少至30%,开启懒惰RPC后vCUDA虚拟化性能最高可提升148%。VMRPC是首个直接针对虚拟机体系的远程过程调用系统,与传统RPC系统不同的是,它利用了虚拟机之间的共享内存机制来实现堆和栈的共享,避免了不必要的数据复制和序列化操作,达到了传统RPC在虚拟机平台下所无法企及的性能。相关实验结果显示,VMRPC的吞吐率最大可达到传统RPC的100倍以上。利用API重定向和VMRPC,vCUDA同时实现了虚拟化的透明性和高效性,针对官方样例和第三方程序的测试表明,vCUDA所引入的虚拟化开销不超过21%,具有较大的实用价值。在CUDA虚拟化的相关基础上,vCUDA实现了对多路复用、挂起/恢复等传统虚拟机高级特性的支持,使得依赖于这些特性的虚拟机应用可以无缝部署于vCUDA框架之上。vCUDA采用了“一对多”模式来实现多路复用,由单一的工作线程来满足不同客户的应用请求。在挂起/恢复功能方面,vCUDA利用Kernel运行的间隙来保存和恢复当前CUDA状态。相关实验结果显示,vCUDA在实施多路复用、挂起/恢复的过程中仅引入了有限的开销,满足实际应用的需要。进一步,本文利用vCUDA所采用的CUDA状态追踪和管理方法,在传统GPU核外检查点方案的基础上实现了核内检查点方案——IKC,增强了GPU的容错能力。
其他文献
<正>怎样才能跳好蒙古舞,我认为跳好蒙古舞应有一个循序渐进的过程,即蒙古舞肢体的解放、蒙古人的气质和艺术化的节奏处理。虽然我们可以认为这三个环节在舞蹈的过程中要加以
<正>中国的傣族人口约有116万人,聚居在云南省德宏傣族景颇族自治州和西双版纳傣族自治州,散居于临沧、思茅、保山、楚雄、玉溪等地。傣族跟中国境内属百越族群的壮、布依、
架空空间是传统和当代建筑中一种较常见的空间形式,既可以渗透建筑的室内外环境又可以适应地形的高低变化。本文在阐述“架空空间”基本概念的基础上对其含义进行了新的挖掘,
随着社会的发展,时代的进步,大学生这一特殊的群体其心理需求也在相应的随之发生变化,教学建筑作为大学生重要的学习生活环境之一,其建筑环境和空间对学生的行为模式有着重要的相
随着我国城镇化进程的不断加快,边远山区村落的生存状况面临严峻考验。特别是面对世界“一体化”和“趋同化”的文化危机,少数民族古聚落和民居的保护成为迫切需要研究的课题。
随着当今社会经济水平的提高和人们思想观念的更新,旅游业在中国得到了前所未有的发展,可以毫不夸张的说,在地球的任何一块版图上都能看到中国旅游者的身影。每逢节假日,各大风景
<正>日前,包括央视动画在内的10家动画制作机构和10家动画播出机构发出拒绝暴力、低俗等内容的联合倡议。广电总局发展研究中心动漫产业研究员宋磊接受采访时称,总局短期内没
从崩落矿岩散体物理力学性质出发,对矿岩散体流动规律进行了理论分析,把矿岩散体流动规律研究分为两个过程:整体流动和细小颗粒渗透流动。通过试验探明了放出体形和大小受矿
简述了国内外物料干燥的技术水平,提出了一个全新原理的新型干燥技术———静电干燥,介绍其技术原理、技术特点,并对应用开发作了展望.
综述了硅酸盐细菌在矿物工程领域的研究现状。研究显示 ,在矿石除杂、浮选工艺、提取有价值金属、溶磷解钾等方面进行了一些研究 ,取得了一些进展。指出今后需加强这方面的研