用于分析对于应用程序修改前命令改变的性能的图形命令管理工具和方法技术

技术编号:4503490 阅读:217 留言:0更新日期:2012-04-11 18:40
本发明专利技术披露方法、系统、图形计算机界面和计算机可读介质来使得对于应用程序能够优化视频帧渲染特性。所述方法包括渲染视频帧并且捕获表示视频帧的渲染的入栈缓冲器设置。所述方法还包括修改入栈缓冲器设置的特征而旁路该应用程序,并且使用修改的特征来重新渲染该帧。所述方法还使得能够比较渲染和重新渲染,并且呈现比较结果。提供图形用户界面使得能够实现该功能性而不需要修改应用程序的代码,从而意识到根据性能渲染和处理效率能够呈现何种对应用程序的可能的改变。

【技术实现步骤摘要】
【国外来华专利技术】用于分析对于应用程序修改前命令改变的性能的图形命令管理工具和方法
技术介绍
0001当前的开发人员必须通过艰苦的过程来优化和调试游戏应用程序。开发人员必须修改应用程序代码并且随后重新运行该应用程序代 码,这将给游戏开发过程增加大量的时间。此外,当前上述过程使得开发人员不能集中于应用程序的特定的渲染特征(aspect),用来研究优化。0002因此,开发人员被降级为尝试和错误调试过程与优化过程。0003考虑到这些问题,开发人员需要通过智能优化算法和分析技 巧来快速并且有效地优化图形处理器的使用的能力。此外,开发人员要求 有效定位和解决与图形相关的程序缺陷或者性能的低效率所必须的信息。
技术实现思路
0004广义而言,本专利技术通过提供使得开发人员能够有效优化应用 程序的渲染特征的方法和设备来满足这些需求。应该意识到,本专利技术能够 以多种方式实现,包括作为方法、系统、计算机可读介质或者装置。以下 描述本专利技术的多个独创性实施例。0005在一个实施例中,提供用于对在应用程序执行期间所产生的 多帧视频序列的帧进行性能分析的系统。所述系统包括被配置来执行所述 应用程序的硬件引擎和被配置来从所述硬件引擎获取入栈緩沖器数据的 库捕获模块,其中,所述入栈緩沖器数据用于渲染所述多帧视频序列的帧。 所述系统还包括用于呈现入栈緩沖器数据的内容的交互显示的图形用户 界面。所述内容定义多个命令和与所述多个命令的每一个相关联的数据。 所述图形用户界面使得访问能够对入栈緩冲器的内容进行改变。所述系统 还包括使得能够重新执行通过图形用户界面进行任何改变的入栈緩冲器 数据的重放模块。图形用户界面提供量化对入栈緩冲器做出改变时入栈緩 沖器的执行中的差异的多个性能分析测量。0006在该实施例的一个方面中,所述图形用户界面提供访问来对 入栈緩冲器数据进行改变而不需要执行对应用程序的改变。在另 一 方面中,图形用户界面提供多个菜单和窗口用于表示多个性能分析测量并用于 选择多个菜单和窗口的特定一个来使得能够改变入栈緩冲器数据的内容,并且随后定量查看结果以及可视化地显示性能特征。0007在另一个实施例中,提供用于优化应用程序的视频帧渲染特 性的方法。所述方法包括渲染视频帧并且捕获表示视频帧的渲染的入栈緩 冲器设置。所述方法还包括修改入栈緩冲器设置的特征而旁路该应用程 序,并且使用修改的特征来重新渲染该帧。所述方法还使得能够比较渲染 和重新渲染,并且呈现比较结果。0008在又一个实施例中,提供用于优化视频帧渲染的图形用户界 面(GUI)。所述GUI包括示出入栈緩冲器的内容的显示区域和示出根据 入栈缓沖器的内容渲染视频帧的图形结果的性能显示区域。所述GUI还包 括入栈緩冲器内容修改区域。0009从下面结合附图以举例方式对本专利技术的原理进4亍说明的详细 描述,本专利技术的其它方面和优点变得显而易见。附图说明0010通过参考以下结合附图的描述,可以最好理解本专利技术及其它优,泉。0011图1示出根据本专利技术的一个实施例的具有图形硬件引擎的游戏 计算控制台,其定义了该游戏计算控制台的各种硬件和软件单元的构成。0012图2示出根据本专利技术的一个实施例的其中游戏计算控制台被用 来执行图形硬件引擎的处理和GCM工具的可替代实施例。0013图3示出才艮据本专利技术的一个实施例的和GCM工具相连接的图 形引擎的更详细图。0014图4示出根据本专利技术的一个实施例的定义可以使用GCM工具 执行的操作的处理流程图。0015图5是示出根据本专利技术的一个实施例的可以通过入栈緩冲器被 捕获的各种资源的简化示意图。0016图6是示出根据本专利技术的一个实施例的提供来自GCM工具的 所捕获的信息的图形用户界面(GUI)窗口的简化示意图。0017图7是示出进一步定义图6的绘制/清除窗口的图形用户界面的 简化示意图。0018图8是图7的窗口的放大的视图。0019图9是示出根据本专利技术的一个实施例的原始视图窗口 302与其 内容的简化示意图。0020图10示出根据本专利技术的一个实施例的概述所有的警告和错误 的问题窗口。0021图11示出根据本专利技术的一个实施例的入栈緩冲器的总的屏幕。0022图12示出根据本专利技术的一个实施例的包括所有状态命令列表和对于每一个状态命令的冗余百分比的详细冗余窗口 。0023图13A-B是具有和图6的渲染状态窗口相关的其他信息的简化示意图。0024图14A-D示出根据本专利技术的 一 个实施例的入栈緩冲器使用的紋理。0025图15示出根据本专利技术的一个实施例的提供紋理的存储器视图 的存储器转储窗口。0026图16示出根据本专利技术的一个实施例的入栈緩沖器所使用的顶 点阵列。0027图17示出才艮据本专利技术的一个实施例的入栈緩冲器所使用的索 引阵列。0028图18是示出根据本专利技术的一个实施例的片段程序窗口的筒化 示意图。0029图19A示出根据本专利技术的 一个实施例的列出入栈緩冲器中使用 的所有程序并^C供解释的转储的顶点程序窗口 。0030图19B示出根据本专利技术的一个实施例的顶点程序常量窗。0031图20A和20B示出根据本专利技术的一个实施例的提供GPU中的 寄存器的状态的详细视图的GPU寄存器窗。0032图21A到21K进一步定义4艮据本专利技术的一个实施例的渲染目标窗o0033图22示出根据本专利技术的一个实施例的开发人员在其中选择成 形器(profiler)特征的菜单的简化示意图。0034图23A和图23B示出#>据本专利技术的一个实施例的成形的示例 图形示意图。0035图24A和图24B示出根据本专利技术的一个实施例的定向到可用 820于分析的性能计数器的图形用户界面。0036图25A到25D示出根据本专利技术的一个实施例的用于优化帧的 渲染的剔除过程。0037图26A到260示出根据本专利技术的一个实施例的当应用多个"假 设,,(what-if)性能优化时开发人员可以通过其进行的事件的多个序列。0038图27A-E示出根据本专利技术的一个实施例的可以被称为试验的性 能优化,该试验可以采用 一个或者多个"假设"或者性能优化来提供对于被渲 染的游戏或者应用程序的最佳设置的推荐。0039图28提供可以用来渲染图形的示例硬件架构,尽管本专利技术不 限于任意类型或者品牌的架构。具体实施例方式0040本专利技术披露一种图形命令管理(GCM)工具,使得能够访问由 图形硬件所产生的入栈緩冲器数据用于渲染帧。GCM工具可以被限定为系 统、方法并且被嵌入到计算机可读介质。广义而言,GCM工具包括使得入 栈缓冲器数据对于特定帧或一些帧被捕获、以一些方式修改,并且随后重新 提交到图形硬件用于重新渲染的功能性,来确定是何种性能影响,而不需要 修改导致入栈緩沖器数据产生的应用程序的代码。0041在以下描述中,陈述多个特定细节用于提供对本专利技术的全面理 解。然而,对于本领域内的技术人员应该清楚的是无需这些特定细节的一些 或者全部可以实现本专利技术。在其它实例中,为了不会不必要地混淆本专利技术, 公知的处理步骤没有详细描述。0042为了清楚起见,术语"入栈緩冲器"(push buffer)定义通常用 在计算机架构中的緩沖器结构并且可以被称为"命令緩沖器"。另夕卜,术语"帧,, 是指多帧动态视频序列的多个帧的任意给定帧(或者帧的组),其是由图形 硬件在执行应用程序期间产生的。在本文档来自技高网...

【技术保护点】
一种用于对在应用程序执行期间所产生的多帧视频序列的帧进行性能分析的系统,包括: (i)被配置来执行所述应用程序的硬件引擎; (ii)被配置来从所述硬件引擎获取入栈缓冲器数据的库捕获模块,所述入栈缓冲器数据用于所述多帧视频序列的帧 ; (iii)用于呈现所述入栈缓冲器数据的内容的交互显示的图形用户界面,所述内容定义多个命令和与所述多个命令的每一个相关联的数据,所述图形用户界面使得访问能够对所述入栈缓冲器的所述内容进行改变;和 (iV)使得能够重新执行通过所 述图形用户界面进行任何改变的入栈缓冲器数据的重放模块; 其中,所述图形用户界面提供多个性能分析测量,以在对入栈缓冲器做出改变时量化入栈缓冲器的执行中的差异。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:ME切尼B鲍特金JJ奥利克
申请(专利权)人:索尼计算机娱乐美国公司
类型:发明
国别省市:US[美国]

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

1
相关领域技术
  • 暂无相关专利