一种支持多GPU虚拟化的平台架构及其工作方法技术

技术编号:7718619 阅读:261 留言:0更新日期:2012-08-30 02:45
本发明专利技术提供一种支持多GPU虚拟化的平台架构及其工作方法,该架构通过在GPU服务器端和虚拟机端部署中间件,利用socket或者infiniband等方式作为传输媒介,填补了原有的虚拟机平台不能利用GPU加速的缺点。该架构通过一个或者多个集中控制的管理节点对GPU资源进行管理,并对GPU资源进行细粒度的划分,能够提供多任务并行任务的功能。虚拟机通过中间件向管理节点请求GPU资源,并利用GPU资源加速。GPU服务器通过中间件向管理节点注册GPU资源,并利用GPU资源提供服务。本发明专利技术将GPU的并行处理能力引入虚拟机,并结合管理机制,最大限度的提高GPU利用率。本架构能够有效的降低能耗,提高计算效率。

【技术实现步骤摘要】

本专利技术涉及一种虚拟化环境中虚拟机以重定向方式利用多GPU加速计算的平台架构及其工作方法,属于虚拟化

技术介绍
虚拟化是云计算的核心技术基础,它所带来的成本节约、安全性增强等优势逐渐获得了人们的认可,是计算机科学领域的研究热点。虚拟化技木通过对硬件资源的虚拟化,可以在一台计算机上模拟多个相同的计算机硬件平台,从而能够同时运行多个操作系统并实现相互隔离,提高了服务器的利用效率,在服务器合并、网络安全、计算数据保护、高性能计算和可信等领域都有大量的应用。近几年,图形处理单元(GPU)的性能和功能显著增加。GPU的功能不再局限于图 像处理,同时发展成为ー个有着高计算峰值和内存带宽的高度并行的处理器。随着ー些支持GPGPU (通用图形处理单元)计算的技术(例如CUDA)的推出,GPGPU的应用也越来越广泛。由于GPU的強大的并行计算能力,使得越来越多的高性能运算中引入了 CPU+GPU的异构模式。但是,一方面GPU的功耗较大,如果每个节点都配备GPU,则可能大大增加集群的功耗;一方面,GPU的并行计算能力強大,而在大部分运算中,GPU作为协处理器,仅仅加速代码中的并行部分,使得GPU的使用率不高;另一方面由于GPU的封闭性,虚拟机无法直接利用GPU来加速计算。这使得GPU在虚拟机方面的应用受到了很大的限制。
技术实现思路
抟术问是页 为了解决虚拟化环境无法利用GPU加速的问题,本专利技术提出一种适用于集群的多GPU虚拟化平台架构及其工作方法,通过管理组件、客户端组件、服务器端组件协同工作,使得虚拟机可以获取GPU強大的并行计算能力,能够实现对GPU资源的获取和细粒度的资源分配,并通过对GPU进行负载均衡,提高GPU利用率,降低能耗。本专利技术实现了利用GPU对虚拟机处理能力的提升,虚拟机中的组件通过拦截应用程序对GPU调用,并重定向至本机特权域或者远程GPU服务器,使得应用程序的GPU调用在特权域或者远程GPU服务器之上执行,并在执行完成返回结果到虚拟机。技术方案 本专利技术为了解决上述技术问题采用如下技术方案 ー种支持多GPU虚拟化的平台架构,包括GPU资源管理模块、虚拟机客户端模块、GPU服务端模块,GPU资源管理模块部署在GPU资源管理节点上,虚拟机客户端模块部署在虚拟机客户端上,GPU服务端模块部署在GPU服务端上,GPU资源管理模块负责GPU服务器的注册以及对GPU资源请求的处理,虚拟机客户端模块和GPU服务端模块进行数据传输,虚拟机客户端模块与GPU服务端模块进行交互,虚拟机客户端模块拦截虚拟机对GPU的调用,并重定向至GPU服务端模块,GPU服务端模块则接受虚拟机客户端模块拦截的GPU调用信息,调用GPU执行,并返回执行結果。上述支持多GPU虚拟化的平台架构的工作方法包括如下步骤 步骤1,启动GPU资源管理模块,监听GPU服务端模块的注册请求以及虚拟机客户端模块的资源请求,并对注册的GPU服务器维护ー张状态表。步骤2,启动GPU服务端模块,向GPU资源管理模块发送注册请求。步骤3,GPU资源管理模块接收注册请求,建立ー张表,维护当前GPU服务器的状态,完成后返回成功。步骤4,GPU服务端模块接收到注册成功的信息,立刻监听指定端ロ。步骤5,启动虚拟机客户端模块,监听对GPU的调用。当虚拟机出现GPU调用,则向GPU资源管理模块发送资源请求。步骤6,GPU资源管理模块接收到资源请求,获取已注册GPU服务器的工作状态,根据一定算法,向虚拟机客户端模块分配最匹配的GPU服务器。步骤7,GPU资源管理模块接收到分配的GPU服务器,并与该GPU服务器的GPU服务端模块建立数据传输连接,虚拟机客户端模块将拦截的调用封装,并通过数据传输连接发送至GPU服务端模块。步骤8,GPU服务端模块收到封装的数据,综合每个GPU负载信息,为其选择最匹配的GPU,执行调用,并返回结果直至执行结束。步骤9,虚拟机客户端模块接收到结果返回给应用程序直至执行结束。有益效果 本专利技术利用现有的虚拟化技术,将GPU的并行处理能力引入虚拟机,并结合管理机制,通过常用的socket、infiniband或者各虚拟化平台专用的通信方式作为数据传输的载体,不对现有虚拟化平台进行修改,只在原有平台基础上添加组件,使得虚拟机可以使用GPU来计算,适用于所有的虚拟化平台。本专利技术易使用,使用者仅需要简单的设置和配置,易移植,无须修改可以工作在各个虚拟化平台之上;本专利技术设计定位为在虚拟化集群中,利用GTO协助提高虚拟化的处理能力,适合教师、学生等在教学过程需要使用GPU演示编程技术或者其他内容,同时也适合在虚拟化集群中,提高虚拟机的处理能力,并且提高GPU的使用率。本专利技术使用场景广泛,具有良好的实用性和可行性。附图说明图I为本专利技术功能模块示意 图2为本专利技术的传输程序流程 图3为本专利技术的实时控制程序流程图。具体实施例方式以下结合附图说明本专利技术具体实施方案 如图I所示,本专利技术提供的支持多GPU虚拟化的平台架构包括GPU资源管理模块、虚拟机客户端模块、GPU服务端模块。GPU资源管理模块部署在GPU资源管理节点上,虚拟机客户端模块部署在虚拟机客户端上,GPU服务端模块部署在GPU服务端(即GPU服务器)上。虚拟机客户端与GPU服务端以及GPU资源管理模块通过socket、inf iniband或者虚拟化平台的专属方式进行通信。GPU资源管理模块负责GPU服务器的注册以及对GPU资源请求的处理,虚拟机客户端模块和GPU服务端模块进行数据传输,虚拟机客户端模块与GPU服务端模块进行交互,虚拟机客户端模块拦截虚拟机对GPU的调用,并重定向至GPU服务端模块,GPU服务端模块则接受虚拟机客户端模块拦截的GPU调用信息,调用GPU执行,并返回执行結果。GPU资源管理模块对GPU服务器模块以及虚拟机客户端模块的请求进行处 理,响应GPU服务器模块的资源注册,并实时监控每个GPU服务器的负载,对每个GPU服务器的任务进行调整,对每个GPU服务器的计算资源进行管理,同时根据负载响应虚拟机客户端模块的请求,并为其分配最匹配的GTO服务器。虚拟机客户端模块与GPU服务端模块,通过socket或者infiniband或者各虚拟化平台专用的通信方式进行交互,通过拦截、重定向的方式,完成虚拟机的GPU加速。此外,GPU服务端模块对GPU服务器中多个GPU进行资源管理,每个GPU支持多个任务并行运行,GPU服务端模块统计每ー个GPU当前任务负载,并根据当前负载进行GPU间的负载均衡。如图2所示为GPU资源管理节点的工作流程图。虚拟机客户端模块向GPU资源管 理模块请求资源,GPU服务端模块向GPU资源管理模块注册资源。GPU资源管理模块对请求进行解析,并根据当前状态进行响应。如图3所示为虚拟机客户端模块与GPU服务端模块交互的工作流程图。计算工作主要由虚拟机客户端模块与GPU服务端模块共同完成。在虚拟机客户模块与GPU服务端模块建立连接后,双方进行数据收发传输。此时,虚拟机客户端模块拦截本机上运行的应用程序对于GPU的调用,井向GPU服务端模块发送数据。GPU服务端模块接收虚拟机客户端的数据,并解析,选择GPU井利用该GPU运算得出結果,并返回执行結果。虚拟机客本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.ー种支持多GPU虚拟化的平台架构,其特征在于包括GPU资源管理模块、虚拟机客户端模块、GPU服务端模块,GPU资源管理模块部署在GPU资源管理节点上,虚拟机客户端模块部署在虚拟机客户端上,GPU服务端模块部署在GPU服务端上,GPU资源管理模块负责GPU服务器的注册以及对GPU资源请求的处理,虚拟机客户端模块和GPU服务端模块进行数据传输,虚拟机客户端模块与GPU服务端模块进行交互,虚拟机客户端模块拦截虚拟机对GPU的调用,并重定向至GPU服务端模块,GPU服务端模块则接受虚拟机客户端模块拦截的GPU调用信息,调用GPU执行,并返回执行結果。2.根据权利要求I所述的支持多GPU虚拟化的平台架构,其特征在于所述GPU资源管理模块对GPU服务端模块以及虚拟机客户端模块的请求进行处理,响应GPU服务端模块的资源注册,并实时监控每个GPU服务器的负载,对每个GPU服务器的任务进行调整,对每个GPU服务器的计算资源进行管理,同时根据负载响应虚拟机客户端模块的请求,并为其分配最匹配的GPU服务器。3.根据权利要求I所述的支持多GPU虚拟化的平台架构,其特征在于所述虚拟机客户端模块与GPU服务端模块通过socket或者inf iniband或者各虚拟化平台专用的通信方式进行交互,通过拦截、重定向的方式,完成虚拟机的GPU加速。4.根据权利要求I所述的支持多GPU虚拟化的平台架构,其特征在于所述GPU服务端模块对GPU服务...

【专利技术属性】
技术研发人员:袁家斌吕相文马业
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1