当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于在虚拟执行环境中进行高效的图形处理的装置和方法制造方法及图纸

技术编号:14568886 阅读:165 留言:0更新日期:2017-02-06 02:38
描述了一种用于改善虚拟执行环境中的图形操作的效率的装置和方法。例如,系统的一个实施例包括:用于检测客户执行环境中的图形应用编程接口(API)调用,并响应地将图形API调用分类为源自应用程序或源自系统组件的分类模块;所述分类模块用于将信息和图形API调用中的每个关联,以指出图形API调用中的每一个是源自应用程序的还是源自系统组件的;以及用于将图形API调用转换成在主机执行环境中可执行的格式的增强的图形API转换器(EGAT),所述EGAT用于利用被分类模块将其与图形API调用关联的信息而将API调用的每一个识别为源自应用程序的或是源自系统组件的,其中所述EGAT包括:第一转换序列,其用于如果图形API调用是源自应用程序的,则将图形API调用转换成第一组转换的图形API调用;以及第二转换序列,其用于如果图形API调用是源自系统组件的,则将图形API调用转换成第二组转换的图形API调用,其中第一组转换的图形API调用和第二组转换的图形API调用不同。

【技术实现步骤摘要】
【国外来华专利技术】
概括来讲,本专利技术涉及计算机处理器的领域。更加具体而言,本专利技术涉及一种用于在虚拟执行环境中进行高效图形处理的装置和方法。
技术介绍
虚拟机系统是包括支持一个或多个虚拟机(VM)的虚拟机监视器(VMM)的计算机系统。虚拟机监视器是这样一种软件程序,其控制物理计算机硬件,并且将在虚拟机(VM)内执行的程序呈现出这些程序是在真正的物理计算机硬件上执行的假象。每个VM通常充当独立的平台,其中,该平台由“客户”操作系统(OS)控制,“客户”操作系统即由VMM托管的OS,其中VMM如同运行在真正的机器上而不是在VM内那样而执行。在一些实施方式中,虚拟执行环境(例如,VMM)由在计算机硬件上本机地(natively)执行的“主机”操作系统(OS)来提供。主机OS可以支持多个不同的客户OS,其中每个客户OS都潜在地运行多个不同的应用程序。在本实施方式中,由主机OS内的逻辑将由应用程序执行的非本机指令截取、解码并转换为本机指令。然后,将本机指令的结果从主机OS提供回应用程序。除了非本机通用指令以外,也可以将非本机图形指令截取、解码并转换成本机图形指令以用于在图形处理单元(GPU)上执行。在移动细分市场,通常有多个共存的平台,并且在一个平台上运行的应用程序不能在另一个平台上运行。如果单个平台(例如,基于IntelArchitecture(IA)的平台)可以被配置为无论其原本的目标平台而运行任何应用程序,则这将具有重要价值。例如前面讨论的平台虚拟化是实现该愿景的一个可能的解决方案。然而,为了在虚拟平台上很好地运行移动应用程序,高效的图形API转换对于实现接近于本机用户体验非常重要。附图说明可以结合以下附图从以下的细节说明中获得对本专利技术的更好的理解,其中:图1是具有处理器的计算机系统的实施例的方框图,其中处理器具有一个或多个处理器核心和图形处理器;图2是处理器的一个实施例的方框图,其中处理器具有一个或多个处理器核心、集成的存储器控制器、以及集成的图形处理器;图3是图形处理器的一个实施例的方框图,其中,图形处理器可以是独立的图形处理单元,或者可以是和多个处理核心集成的图形处理器;图4是图形处理器的图形处理器引擎的实施例的方框图;图5是图形处理器的另一个实施例的方框图;图6是包括处理元件阵列的线程执行逻辑的方框图;图7示出了根据实施例的图形处理器执行单元的指令格式;图8是图形处理器的另一个实施例的方框图,其中图形处理器包括图形管线、媒体管线、显示引擎、线程执行逻辑、以及渲染输出管线;图9A是示出了根据实施例的图形处理器命令格式的方框图;图9B是示出了根据实施例的图形处理器命令序列的方框图;图10示出了根据实施例的数据处理系统的示例性图形软件构架;图11示出了包括主机操作系统(OS)和客户OS的示例性系统构架;图12示出了包括推测分组发现逻辑和推测分组执行逻辑的本专利技术的一个实施例;图13A示出了用于处理从客户OS生成的返回API调用的机制;图13B示出了本专利技术的一个实施例,其中返回API调用被分组以进行推测执行;图14示出了用于生成返回API分组的本专利技术的一个实施例;图15A示出了根据用于生成返回API分组的本专利技术的一个实施例的方法;图15B示出了根据本专利技术的一个实施例的用于执行返回API分组的方法;图16示出了采用差异化图形转换的本专利技术的一个实施例;图17示出了利用传统图形API转换器(GAT)来转换表面的系统;图18示出了本专利技术的一个实施例,其中增强的GAT减少了表面转换所需的处理;图19示出了在其中表面组合器按照和应用程序的表面相同的方式进行仿真的系统;图20示出了本专利技术的一个实施例,其中相对于应用程序的表面而对表面组合器的表面不同地进行处理;图21示出了用于在主机OS上仿真表面和纹理的系统;图22示出了将客户的表面转换成主机纹理的本专利技术的一个实施例;图23示出了在一个实施例中采用的用于将客户表面转换成主机纹理的额外的细节;以及图24示出了包括用于对表面进行推测分组执行、差异化转换、以及纹理渲染的技术的一个实施例。具体实施方式在以下描述中,出于解释的目的阐述了许多具体细节,以便提供对以下描述的本专利技术的实施例的透彻的理解。然而,对于本领域技术人员来说很明显的是,可以在没有这些具体细节中的一些的情况下实施本专利技术的实施例。在其他实例中,以框图的形式示出了公知的结构和设备,以避免模糊本专利技术的实施例的基本原理。示例性图形处理器构架和数据类型概述—图1-3图1是根据实施例的数据处理系统100的方框图。数据处理系统100包括一个或多个处理器102和一个或多个图形处理器108,并且可以是单处理器桌面系统、多处理器工作站系统、或具有大量处理器102或处理器核心107的服务器系统。在一个实施例中,数据处理系统100是用在移动、手持或嵌入式设备中的片上系统集成电路(SOC)。数据处理系统100的实施例可以包括或被包括在基于服务器的游戏平台、游戏控制台(包括游戏和媒体控制台)、移动游戏控制台、手持游戏控制台、或在线游戏控制台内。在一个实施例中,数据处理系统100是移动电话、智能电话、平板计算设备或移动互联网设备。数据处理系统100也可以包括、耦合于或集成在例如智能手表可穿戴设备、智能眼镜可穿戴设备、增强的现实设备、或虚拟现实设备的可穿戴设备内。在一个实施例中,数据处理系统100是具有一个或多个处理器102和由一个或多个图形处理器108生成的图形界面的电视或机顶盒设备。数据处理系统100的实施例可以包括或被包括在基于服务器的游戏平台、游戏控制台(包括游戏和媒体控制台)、移动游戏控制台、手持游戏控制台、或在线游戏控制台内。在一个实施例中,数据处理系统100是移动电话、智能电话、平板计算设备或移动互联网设备。数据处理系统100也可以包括、耦合于或集成在例如智能手表可穿戴设备、智能眼镜可穿戴设备、增强的现实设备、或虚拟现实设备的可穿戴设备内。在一个实施例中,数据处理系统100是具有一个或多个处理器102和由一个或多个图形处理器108生成的图形界面的电视或机顶盒设备。一个或多个处理器102的每个包括用于处理指令的一个或多个处理器核心107,其中,当指令被执行时,执行系统和用户软件的操作。在一个实施例中,一个或多个处理器核心107的每一个被配置为处理特定的指令集109。指令本文档来自技高网...

【技术保护点】
一种系统,包括:分类模块,其用于检测客户执行环境中的图形应用编程接口(API)调用,并响应性地将所述图形API调用分类为源自应用程序或源自系统组件;所述分类模块用于将信息与所述图形API调用中的每一个相关联,以指示所述图形API调用中的每一个是源自所述应用程序还是源自所述系统组件;以及增强的图形API转换器(EGAT),其用于将所述图形API调用转换成能够在主机执行环境中执行的格式,所述EGAT用于使用通过所述分类模块而与所述图形API调用相关联的所述信息,将所述API调用中的每一个标识为源自所述应用程序或源自所述系统组件,其中所述EGAT包括:第一转换序列,其用于如果所述图形API调用源自所述应用程序,则将所述图形API调用转换成第一组转换的图形API调用;以及第二转换序列,其用于如果所述图形API调用源自所述系统组件,则将所述图形API调用转换成第二组转换的图形API调用,其中所述第一组转换的图形API调用和所述第二组转换的图形API调用是不同的。

【技术特征摘要】
【国外来华专利技术】1.一种系统,包括:
分类模块,其用于检测客户执行环境中的图形应用编程接口(API)调
用,并响应性地将所述图形API调用分类为源自应用程序或源自系统组件;
所述分类模块用于将信息与所述图形API调用中的每一个相关联,以
指示所述图形API调用中的每一个是源自所述应用程序还是源自所述系统
组件;以及
增强的图形API转换器(EGAT),其用于将所述图形API调用转换成能
够在主机执行环境中执行的格式,所述EGAT用于使用通过所述分类模块
而与所述图形API调用相关联的所述信息,将所述API调用中的每一个标
识为源自所述应用程序或源自所述系统组件,其中所述EGAT包括:
第一转换序列,其用于如果所述图形API调用源自所述应用程序,
则将所述图形API调用转换成第一组转换的图形API调用;以及
第二转换序列,其用于如果所述图形API调用源自所述系统组件,
则将所述图形API调用转换成第二组转换的图形API调用,其中所述第
一组转换的图形API调用和所述第二组转换的图形API调用是不同的。
2.根据权利要求1所述的系统,其中所述第一组转换的图形API调用
和所述第二组转换的图形API调用包括能够在所述主机执行环境中直接执
行的本机图形API调用。
3.根据权利要求1所述的系统,还包括:
命令缓冲器,其用于在通过所述第一转换序列或所述第二转换序列的
转换之前而存储所述图形API调用,其中,所述分类模块用于将指示所述
API调用是源自所述应用程序还是源自所述系统组件的所述信息附加至所
述命令缓冲器中的所述图形API调用。
4.根据权利要求1所述的系统,其中所述分类模块用于分析包括调用
栈或过程名称的调用环境,以确定所述图形API调用是源自所述应用程序

\t还是源自所述系统组件。
5.根据权利要求1所述的系统,其中所述系统组件包括系统服务,所
述系统服务组合来自多个应用程序的表面并且使用来自所述多个应用程序
的组合的表面来渲染最终组合的表面。
6.根据权利要求5所述的系统,其中所述系统组件包括表面组合器。
7.根据权利要求1所述的系统,其中所述客户执行环境包括客户操作
系统,而所述主机执行环境包括主机操作系统,所述主机操作系统显示应
用编程接口(API)以支持所述客户操作系统的执行。
8.根据权利要求1所述的系统,其中,所述EGAT还包括:
纹理渲染模块,其能够由所述第一转换序列和所述第二转换序列使用,
以将在所述图形API调用中实施的客户表面转换成在所述第一组转换的图
形API调用和所述第二组转换的图形API调用中实施的主机纹理。
9.一种系统,包括:
推测分组发现(SGD)模块,其用于确定能够被一起推测地执行的第
一分组图形应用编程接口(API)调用;
推测分组执行器(SGE)模块,其用于响应于检测到所述第一分组中的
所述图形API调用中的第一图形API调用被调用,响应性地执行所述第一
分组中的所述图形API调用中的全部以生成第一分组结果,所述SGE模块
用于在存储器中高速缓存所述第一分组结果;
所述SGE模块,其用于响应于所述第一分组中的所述图形API调用中
的第二图形API调用被...

【专利技术属性】
技术研发人员:L·尹J·李
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1