一种图形处理器分布式虚拟化的实现方法及分布式系统技术方案

技术编号:24010292 阅读:52 留言:0更新日期:2020-05-02 01:30
本发明专利技术实施例提供了一种图形处理器分布式虚拟化的实现方法及分布式系统,分布式系统包括主物理机和从物理机,主物理机包括GPU、主内存、主内存管理器以及与GPU直通的GPU域,从物理机包括从内存、从内存管理器以及客户虚拟机,主内存与从内存为分布式共享内存。客户虚拟机将待处理数据发送至本地的从内存;从内存管理器到从内存中提取待处理数据,并根据预先配置的从内存与主内存的对应关系,将待处理数据写入对应的主内存;主内存管理器从主内存中提取待处理数据,并根据预先配置的主内存与GPU域的对应关系,将待处理数据发送至对应的GPU域;GPU域调用直通的GPU对待处理数据进行处理,得到数据处理结果。通过本方案,实现了GPU分布式虚拟化。

A method and system of distributed virtualization for graphics processor

【技术实现步骤摘要】
一种图形处理器分布式虚拟化的实现方法及分布式系统
本专利技术涉及计算机
,特别是涉及一种图形处理器分布式虚拟化的实现方法及分布式系统。
技术介绍
随着AI(ArtificialIntelligence,人工智能)和大数据的兴起,GPU(GraphicsProcessingUnit,图形处理器)再次受到人们的关注。并且,随着虚拟化技术和云计算技术的发展,越来越多的数据中心和物理机被虚拟化,越来越多的业务被迁移到客户虚拟机上,希望在客户虚拟机上也能像物理机上一样使用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分配的主内存;所述宿主机操作系统建立所述从内存与所述主内存的对应关系,并将所述对应关系发送至所述主内存管理器及所述从物理机的从内存管理器;所述从内存管理器将所述从内存以外设组件互联标准PCI设备的形式挂到所述客户虚拟机上。可选的,所述方法还包括:所述宿主机操作系统在获取到删除GPU的客户虚拟机或者客户虚拟机卸载GPU的请求时,根据所述请求,删除所述客户虚拟机对应的从内存与主内存的对应关系,并向所述主内存管理器和所述客户虚拟机所属从物理机的从内存管理器发送删除指令;所述主内存管理器和所述从内存管理器根据所述删除指令,删除所述对应关系。第二方面,本专利技术实施例提供了一种分布式系统,所述系统包括:主物理机和从物理机;所述主物理机包括GPU、主内存、主内存管理器以及与所述GPU直通的GPU域,所述从物理机包括从内存、从内存管理器以及客户虚拟机,所述主内存与所述从内存为分布式共享内存;所述从物理机的客户虚拟机,用于将待处理数据发送至所述从物理机的从内存;所述从物理机的从内存管理器,用于从所述从内存中提取所述待处理数据,并根据预先配置的从内存与主内存的对应关系,将所述待处理数据写入所述从内存对应的主内存;所述主内存管理器,用于从所述主内存中提取所述待处理数据,并根据预先配置的主内存与GPU域的对应关系,将所述待处理数据发送至所述主内存对应的GPU域;所述GPU域,用于调用直通的GPU对所述待处理数据进行处理,得到数据处理结果。可选的,所述主物理机与所述从物理机配置有支持远程直接内存访问的无限带宽网卡或者具有允许通过以太网使用远程直接内存访问功能的网卡。可选的,所述GPU域,还用于将所述数据处理结果发送至所述主内存;所述主内存管理器,还用于从所述主内存中提取所述数据处理结果,并根据所述预先配置的从内存与主内存的对应关系,将所述数据处理结果写入所述主内存对应的从内存;所述从内存所属从物理机的从内存管理器,还用于从所述从内存中提取所述数据处理结果,并根据预先配置的从内存与客户虚拟机的对应关系,将所述数据处理结果发送至所述从内存对应的客户虚拟机。可选的,所述从物理机的从内存管理器,具体用于:从所述从内存提取所述待处理数据,并根据预先配置的从内存与主内存的对应关系,通过远程直接内存访问RDMA单边访问的方式,将所述待处理数据写入所述从内存对应的主内存。可选的,所述主物理机还包括宿主机操作系统;所述宿主机操作系统,用于在获取到创建GPU的客户虚拟机或者客户虚拟机挂载GPU的请求时,根据所述请求,向所述客户虚拟机分配GPU;获取所述客户虚拟机所属从物理机为所述客户虚拟机分配的从内存以及所述主物理机为已分配的GPU分配的主内存;建立所述从内存与所述主内存的对应关系,并将所述对应关系发送至所述主内存管理器及所述从物理机的从内存管理器;所述从内存管理器,还用于将所述从内存以PCI设备的形式挂到所述客户虚拟机上。可选的,所述宿主机操作系统,还用于在获取到删除GPU的客户虚拟机或者客户虚拟机卸载GPU的请求时,根据所述请求,删除所述客户虚拟机对应的从内存与主内存的对应关系,并向所述主内存管理器和所述客户虚拟机所属从物理机的从内存管理器发送删除指令;所述主内存管理本文档来自技高网...

【技术保护点】
1.一种图形处理器分布式虚拟化的实现方法,其特征在于,应用于分布式系统,所述分布式系统包括主物理机和从物理机,所述主物理机包括图形处理器GPU、主内存、主内存管理器以及与所述GPU直通的GPU域,所述从物理机包括从内存、从内存管理器以及客户虚拟机,所述主内存与所述从内存为分布式共享内存,所述方法包括:/n所述从物理机的客户虚拟机将待处理数据发送至所述从物理机的从内存;/n所述从物理机的从内存管理器从所述从内存中提取所述待处理数据,并根据预先配置的从内存与主内存的对应关系,将所述待处理数据写入所述从内存对应的主内存;/n所述主内存管理器从所述主内存中提取所述待处理数据,并根据预先配置的主内存与GPU域的对应关系,将所述待处理数据发送至所述主内存对应的GPU域;/n所述GPU域调用直通的GPU对所述待处理数据进行处理,得到数据处理结果。/n

【技术特征摘要】
1.一种图形处理器分布式虚拟化的实现方法,其特征在于,应用于分布式系统,所述分布式系统包括主物理机和从物理机,所述主物理机包括图形处理器GPU、主内存、主内存管理器以及与所述GPU直通的GPU域,所述从物理机包括从内存、从内存管理器以及客户虚拟机,所述主内存与所述从内存为分布式共享内存,所述方法包括:
所述从物理机的客户虚拟机将待处理数据发送至所述从物理机的从内存;
所述从物理机的从内存管理器从所述从内存中提取所述待处理数据,并根据预先配置的从内存与主内存的对应关系,将所述待处理数据写入所述从内存对应的主内存;
所述主内存管理器从所述主内存中提取所述待处理数据,并根据预先配置的主内存与GPU域的对应关系,将所述待处理数据发送至所述主内存对应的GPU域;
所述GPU域调用直通的GPU对所述待处理数据进行处理,得到数据处理结果。


2.根据权利要求1所述的方法,其特征在于,在所述GPU域调用直通的GPU对所述待处理数据进行处理,得到数据处理结果之后,所述方法还包括:
所述GPU域将所述数据处理结果发送至所述主内存;
所述主内存管理器从所述主内存中提取所述数据处理结果,并根据所述预先配置的从内存与主内存的对应关系,将所述数据处理结果写入所述主内存对应的从内存;
所述从内存所属从物理机的从内存管理器从所述从内存中提取所述数据处理结果,并根据预先配置的从内存与客户虚拟机的对应关系,将所述数据处理结果发送至所述从内存对应的客户虚拟机。


3.根据权利要求1所述的方法,其特征在于,所述从物理机的从内存管理器从所述从内存中提取所述待处理数据,并根据预先配置的从内存与主内存的对应关系,将所述待处理数据写入所述从内存对应的主内存,包括:
所述从物理机的从内存管理器从所述从内存提取所述待处理数据,并根据预先配置的从内存与主内存的对应关系,通过远程直接内存访问中单边访问的方式,将所述待处理数据写入所述从内存对应的主内存。


4.根据权利要求1所述的方法,其特征在于,所述主物理机还包括宿主机操作系统,所述方法还包括:
所述宿主机操作系统在获取到创建GPU的客户虚拟机或者客户虚拟机挂载GPU的请求时,根据所述请求,向所述客户虚拟机分配GPU;
所述宿主机操作系统获取所述客户虚拟机所属从物理机为所述客户虚拟机分配的从内存以及所述主物理机为已分配的GPU分配的主内存;
所述宿主机操作系统建立所述从内存与所述主内存的对应关系,并将所述对应关系发送至所述主内存管理器及所述从物理机的从内存管理器;
所述从内存管理器将所述从内存以外设组件互联标准PCI设备的形式挂到所述客户虚拟机上。


5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
所述宿主机操作系统在获取到删除GPU的客户虚拟机或者客户虚拟机卸载GPU的请求时,根据所述请求,删除所述客户虚拟机对应的从内存与主内存的对应关系,并向所述主内存管理器和所述客户虚拟机所属从物理机的从内存管理器发送删除指令;
所述主内存管理...

【专利技术属性】
技术研发人员:李学辉
申请(专利权)人:杭州海康威视系统技术有限公司
类型:发明
国别省市:浙江;33

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

1