当前位置:主页 > 论文 > 哲学论文 >

GPU虚拟化技术及应用研究

发布人: 谜语网 发布时间:2015-10-03 字体: | | 打印文章

推荐阅读:摘要:GPU即图形处理器,在构建高性能计算系统中占有重要地位。为更好地利用GPU的计算优势,GPU虚拟化技术受到关注。系统介绍了GPU虚拟化技术,并对独占使用、设备模拟和应用层接口等3种虚拟化技术进行了研究。从虚拟化桌面应用、GPU通用计算虚拟化和GPU虚拟

摘要:GPU即图形处理器,在构建高性能计算系统中占有重要地位。为更好地利用GPU的计算优势,GPU虚拟化技术受到关注。系统介绍了GPU虚拟化技术,并对独占使用、设备模拟和应用层接口等3种虚拟化技术进行了研究。从虚拟化桌面应用、GPU通用计算虚拟化和GPU虚拟化的安全问题等方面探讨了GPU虚拟化研究的需求及目标,给出了GPU虚拟化市场应用的可行方案。

关键词:GPU虚拟化;虚拟化桌面;通用计算虚拟化

DOIDOI:10.11907/rjdk.151107

中图分类号:TP393

作者简介作者简介:仝伯兵(1989-),男,山东菏泽人,江南大学数字媒体学院硕士研究生,研究方向为机器学习、数据挖掘、数字图像处理;

谢振平(1979-),男,江苏常州人,江南大学数字媒体学院副教授,研究方向为数据挖掘、数字图像处理;

梅向东(1966-),男,湖北武汉人,赞奇科技发展有限公司高级工程师,研究方向为多媒体及计算机应用。

1 GPU虚拟化研究意义

GPU主要实现计算机的图形呈现,具有高性能的多处理器阵列,随着GPU技术的发展,其在3D渲染和大规模并行计算中起着越来越重要的作用[1]。

2 GPU虚拟化方法

目前GPU虚拟化技术有3类:①独占使用;②设备模拟;③应用层接口虚拟化(API 重定向法),下面分别展开阐述。

2.1 独占使用

独占使用(VMM pass-through)是指绕过虚拟机的管理系统,将GPU使用权直接分配给某一虚拟机,任何时刻都只有一台虚拟机拥有GPU的使用权限。这种虚拟化方式使GPU的独立性与完整性得以保存,而且效果与非虚拟条件下的结果差别不大,同时,能够进行通用计算。然而,这种方式与虚拟机动态分配、资源共享的理念不符。另外,独占使用方案兼容性不理想。以Xen VGA Passthrough[5]为例,它运用了英特尔设备虚拟[6](Intel VT-d)技术,在运行时将主显设备直接分配给某一客户虚拟机,使宿主虚拟机和其它客户虚拟机都没有访问该GPU的权限。同时,VESA 模式、 VGABIOS、IO 端口、文本模式、内存映射这些显卡的特殊细节在客户虚拟机中实现并且能够直接访问。使用 Xen VGA Passthrough 技术的GPU执行效率高、功能全,但它不具有设备复用功能,只能被单一系统独占式使用,因而在实际中较少应用。

独占设备法的设计思路是使原生驱动和硬件能够被客户操作系统直接使用,缺少必要的中间层维护和GPU状态跟踪,对实时迁移等高级特性支持不足。比如VMware在用户文档中明确指出:开启VMDirectPath I/O 功能时,其对应的虚拟机将会失去执行实时迁移、挂起/恢复的能力,Xen Passthrough则禁止执行 restore/ save/migration等操作。

2.2 设备模拟

该技术是使用CPU来模拟GPU的电气化接口,从而实现GPU的功能。基于设备模拟的GPU虚拟化在没有物理硬件的支持下,通过纯软件的方式实现GPU虚拟化。由于GPU电气单元数量庞大,出于商业利益考虑,各大厂家的GPU电气接口细节对外是保密的,并且不同的生产厂家甚至同一厂家不同型号的GPU结构差异也很大,这在很大程度上增加了设备模拟的难度。这种模拟器只是在软件调试和硬件设计时得到应用,并不能作为VMM中的虚拟设备使用。QEMU[7]目前具备基本2D功能的显卡(Cirrus CLGD 5446 PCI VGA card),已经在虚拟化系统广泛应用,但也只仿真了GPU的部分功能,如在KVM和Xen中负责虚拟化显示设备。VMware SVGAII[8]是VMware中独立实现的仿真设备,能支持2D显示和Direct3D接口,但不支持OPENGL,且对Direct3D的支持仍然是使用API 重定向技术。

由于在设备模拟中,设备的状态位于内存、CPU等VMM管理部分,其对虚拟机的某些高级特性如实时迁移等适应性较好,虚拟机的实时迁移、系统快照和多路复用等功能均能拓展到GPU相关领域。然而使用CPU模拟方式并不能高效完成GPU的并行计算,在执行时间上CPU是GPU的成百上千倍,导致实用价值较差。 2.3 API重定向技术

应用接口虚拟化(API remoting,API重定向技术),是指对GPU相关的应用程序编程接口在应用层中进行拦截,然后使用重定向(使用GPU)或模拟(不使用GPU)方式实现相应功能,将完成的结果返回给对应的应用程序。目前,OPENGL等传统图形API中已经广泛使用了API重定向虚拟化技术。

API重定向技术方案处理参数在API层进行,能够管理虚拟机内部状态。VMware、Blink等方案对虚拟机的高级特性有不同程度的支持,如VMware实现了针对2D、3D应用的快照、复用、冻结、迁移等功能,完全支持虚拟机的各种高级特性,VMGL[11]实现了3D应用在虚拟机中的冻结/恢复与多路利用功能。

通过分析,可将上述3种GPU虚拟化方法汇总为表1。API 重定向研究在通用计算与图形计算方面成果显著,但性能问题依然是不足之处。在将本地执行代码重定向到远程虚拟机执行时会涉及大量数据的传输和复制,这是各种虚拟方案难以避免的问题,而采用域间通信技术是解决此问题的一种有效方法。

3 GPU虚拟化应用研究

目前国内外对GPU虚拟化研究的重点在虚拟化桌面应用、GPU通用计算虚拟化和GPU虚拟化的安全问题等几个方面。

3.1 虚拟化桌面应用

虚拟化桌面应用指虚拟机在物理机上提供给用户透明的桌面使用环境,这些桌面使用环境通常具备良好的可迁移性。通常,多个被虚拟出的桌面环境要求完全隔离和平行,用户可以将多种不同的应用放在多个不同的虚拟桌面环境中完成。此外用户还能在各个虚拟桌面系统之间快速切换,同时根据各自的需求在各虚拟桌面环境中进行快速部署、用途设定和迁移。虚拟桌面技术需要提供良好的人机交互界面能力,因为大多数的桌面应用都需要进行频繁的用户交互。随着计算机的普及,大型3D游戏、视频播放等娱乐应用越来越流行,对画面显示能力的要求也越来越高,高性能与流畅的图形显示能力已成为虚拟化桌面系统的必然要求。因此,对现有虚拟化技术中图形处理性能进行创新或改进成为研究主流,同时对现有的图形解决方案进行改进以提高虚拟化后图形的处理性能。

3.2 GPU通用计算虚拟化

目前针对GPU虚拟化的研究仍处于起步阶段,大多数都是针对2D、3D图形处理,在GPU通用计算方面涉及较少。随着GPU性能的提升,其优秀的通用计算能力越来越显著,与图形计算一样成为研究的热点。第一个GPU通用计算专用框架CUDA于 2007 年推出。vCUDA[12]采用在用户层拦截并重定向CUDA API的思路,在虚拟机中建立物理GPU的逻辑映像虚拟GPU,实现了GPU资源细粒度划分、重组与再利用等功能,支持挂起/恢复、多机并发等虚拟机高级特性,使得在应用层实现GPU通用计算虚拟化成为可能。Pegasus项目[13]则是基于Xen实现的虚拟机管理平台,为了提高GPU的资源利用率,它将CPU和GPU视为统一协同调度资源,解决了传统异构虚拟机环境中存在的GPU资源调度失配的问题。CheCUDA[14]则借鉴了vCUDA对CUDA状态进行管理和追踪的思路,讨论了在非虚拟化条件下实现CUDA状态恢复和保存的可能性,实现CUDA程序中的检查点方案。

3.3 GPU虚拟化安全问题

在信息爆炸的大背景下,安全性成为GPU虚拟化不容忽视的问题,关于GPU虚拟化安全计算的研究同样处于起步阶段。

长远来看,GPU虚拟化将充分释放GPU的并行计算能力,大幅降低企业面对诸如大数据分析、动漫设计、电影特效渲染等高性能计算需求成本,同时提升云计算应用的服务质量。

5 结语

本文对GPU虚拟化技术进行了研究与分析,介绍了GPU虚拟化的主要方法;对 虚拟化桌面应用、GPU通用计算虚拟化和GPU虚拟化的安全问题进行了分析探讨,给出了相关研究的主要需求点和目标;对GPU虚拟化市场应用进行了梳理,给出了可行的解决方案。

参考文献:

[3] VMWARE. VMware workstation[EB/OL]. www.vmware.com/products/ws/.

[4] 石磊,邹德清,金海.Xen 虚拟化技术[M].武汉:华中科技大学出版社,2009.

[5] XEN. Xen VGA passthrough[EB/OL].wiki.xensource.com/xenwiki/XenVGAPassthrough .

[7] BELLARD F. QEMU, a fast and portable dynamic translator[C]. In: Proc of the annual conference on USENIX Annual Technical Conference, Berkeley, 2005:4141.

[8] VMWARE.VMware SVGA device developer kit[EB/OL]. vmwaresvga.sourceforge.net.

[9] HUMPHREYS G, HOUSTON M, NG R, et al. Chromium: a streamprocessing framework for interactive rendering on clusters[C]. In: Proc of 29th Annual Conference on Computer Graphics and Interactive Techniques. New York, 2002:693702.

[19] 李翔,熊东旭.化云为雨.NVIDIA“加速”云落地[EB/OL]. http://www.eworks.net.cn/interview/leader_597.htm.


1、“议论文格式”范文由查字典范文网网友提供,版权所有,转载请注明出处。
2、议论文格式例文地址:http://www.tkpao.com/lunwen/zhexue/157435.html,复制分享写作指导范文给你身边的朋友!
3、文章来源互联网,如有侵权,请及时联系我们,我们将在24小时内处理!