【技术实现步骤摘要】
【国外来华专利技术】用于超虚拟化的非对称GPU处理器的方法和系统
本申请涉及GPU处理器,尤其涉及在超虚拟化环境中提供非对称图形处理单元(“GPU”)处理器的方法、系统及计算机程序产品。
技术介绍
计算机系统及相关技术影响社会的许多方面。的确,计算机系统处理信息的能力已转变了人们生活和工作的方式。现在,计算机系统通常执行在计算机系统出现以前手动执行的许多任务(例如,文字处理、日程安排、帐目管理等)。最近,计算机系统彼此耦合并耦合到其他电子设备以形成计算机系统及其他电子设备可在其上传输电子数据的有线和无线计算机网络。因此,许多计算任务的执行分布在多个不同的计算机系统和/或多个不同的计算环境中。一些计算机被配置成提供超虚拟化执行环境,超虚拟化执行环境允许客软件以隔离方式共享单个计算机系统的硬件设备。一般而言,超虚拟化执行环境包括受系统管理程序支持的多个分区。每一分区提供供软件在其中执行的隔离执行环境。分区一般包括根分区以及一个或多个子分区。根分区运行主机操作系统并管理虚拟化栈。根分区可获得对物理设备的访问。每一子分区托管客软件(例如,客操作系统和客应用)。通过虚拟设备和系统管理程序的软件接口向子分区提供对物理设备的访问。一些超虚拟化执行环境给子分区(以及在其中运行的客软件)提供对一个或多个物理图形处理单元(“GPU”)的超虚拟化访问。GPU是被配置成执行并行处理任务(诸如图形渲染任务)的处理设备。GPU一般包含能够并发操作的多个物理硬件处理模块(也被称为节点或引擎)。通常,每一节点/引擎执行不同类型的任务(例如,三维渲染、视频加速等)。由此,这些节点/引擎常常被称为是非对称的。现 ...
【技术保护点】
一种在包括一个或多个处理器以及系统存储器的计算机系统处用于在超虚拟化执行环境的子分区中提供非对称虚拟化GPU节点的方法,所述计算机系统还包括物理图形处理单元(“GPU”),所述方法包括:在所述超虚拟化执行环境的根分区内实例化渲染组件的动作,所述渲染组件被配置成在物理GPU处执行接收到的GPU命令;在所述子分区内实例化虚拟GPU(“vGPU”)的动作,所述vGPU被配置成虚拟化所述物理GPU,所述vGPU包括:内核模式驱动器(KMD),其包括多个虚拟节点,每一虚拟节点被配置成与一个或多个其它类型的操作并行地执行不同类型的操作;以及用户模式驱动器(UMD),其被配置成调度供在所述虚拟节点上并行执行的不同类型的操作;将所述KMD声明为多引擎GPU的动作;在所述KMD与所述渲染组件之间建立多个存储器存取信道的动作,每一存储器存取信道对应于所述虚拟节点中的一个不同虚拟节点,并且被配置成在所述对应的虚拟节点与所述渲染组件之间传达GPU命令;以及所述UMD调度供在所述虚拟节点中的一个不同虚拟节点上执行的多个不同类型的操作中的每一操作的动作。
【技术特征摘要】
【国外来华专利技术】2012.01.23 US 13/355,7901.一种在包括一个或多个处理器以及系统存储器的计算机系统处用于在超虚拟化执行环境的子分区中提供非对称虚拟化GPU节点的方法,所述计算机系统还包括物理图形处理单元GPU,所述方法包括:在所述超虚拟化执行环境的根分区内实例化渲染组件的动作,所述渲染组件被配置成在物理GPU处执行接收到的GPU命令;在所述子分区内实例化虚拟GPUvGPU的动作,所述vGPU被配置成虚拟化所述物理GPU,所述vGPU包括:内核模式驱动器KMD,其包括多个虚拟节点,每一虚拟节点被配置成与一个或多个其它类型的操作并行地执行不同类型的操作;以及用户模式驱动器UMD,其被配置成调度供在所述虚拟节点上并行执行的不同类型的操作;将所述KMD声明为多引擎GPU的动作;在所述KMD与所述渲染组件之间建立多个存储器存取信道的动作,每一存储器存取信道对应于所述虚拟节点中的一个不同虚拟节点,并且被配置成在所述对应的虚拟节点与所述渲染组件之间传达GPU命令;以及所述UMD调度多个不同类型的操作中的每一操作以供在所述虚拟节点中的一个不同虚拟节点上执行的动作。2.如权利要求1所述的方法,其特征在于,所述KMD的所述多个虚拟节点超过所述物理GPU处的物理节点的数目。3.如权利要求1所述的方法,其特征在于,所述UMD调度多个不同类型的操作中的每一操作以供在所述虚拟节点的一个不同虚拟节点上执行的动作包括所述UMD跟踪所述虚拟节点中的每一虚拟节点处正在执行哪一操作的动作。4.如权利要求1所述的方法,其特征在于,所述UMD调度多个不同类型的操作中的每一操作以供在所述虚拟节点的一个不同虚拟节点上执行的动作包括所述UMD跨所述虚拟节点同步所述多个操作的执行的动作。5.如权利要求4所述的方法,其特征在于,所述UMD跨所述虚拟节点同步所述多个操作的执行的动作包括:所述UMD调度第一操作在第一节点上运行的动作;以及所述UMD在完成所述第一操作之后调度依赖于所述第一操作的至少一个附加操作在一个或多个附加节点上运行的动作。6.如权利要求5所述的方法,其特征在于,所述UMD调度所述至少一个附加操作的动作包括将所述第一节点配置成在所述第一操作完成时向所述一个或多个附加节点发出信号的动作。7.如权利要求1所述的方法,其特征在于,所述多个不同类型的操作中的每一操作具有标识所述操作的顺序的栅栏标识符,所述方法进一步包括根据栅栏顺序报告所述多个不同类型的操作中的每一操作的完成的动作。8.如权利要求1所述的方法,其特征在于,所述多个虚拟节点包括至少一个非对称虚拟节点和至少一个对称虚拟节点。9.如权利要求1所述的方法,其特征在于,所述多个虚拟节点中的至少一个虚拟节...
【专利技术属性】
技术研发人员:M·P·马拉卡帕里,S·R·帕特里克,
申请(专利权)人:微软公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。