用于帧调步的方法和系统技术方案

技术编号:15198123 阅读:91 留言:0更新日期:2017-04-21 13:55
提供一种用于在渲染过程中进行帧调步的方法和系统。所述方法包括:估算多个图形处理单元(GPU)中的每一个的帧渲染时间,基于至少所估算的帧渲染时间来确定延迟,以及将所述延迟插入所述渲染过程中以便以均匀间隔的方式渲染帧。

Method and system for frame pacing

A method and system for performing frame pacing in rendering. The method includes: estimating multiple graphics processing unit (GPU) frame rendering time of each process, to determine the delay based on the estimated time frame rendering at least, and the delay in order to evenly spaced render frame is inserted into the rendering process.

【技术实现步骤摘要】
【国外来华专利技术】相关申请的交叉引用本申请要求提交日期为2014年8月8日的美国临时申请号62/035,124的权益,所述申请以引用的方式并入,就好像是完全陈述那样。专利
本专利技术总体涉及图形处理。背景图形处理通常使用一个中央处理单元(CPU)和多个图形处理单元(GPU)的组合来执行。在使用多个GPU的渲染系统中,每个GPU在其完成帧时渲染完整的帧并且呈现所述完整的帧以供显示。如果每个GPU的帧在接近另一个GPU完成渲染时完成渲染,那么所渲染的第一帧在屏幕上显示的时间将少于后续帧(它们已经完成)。如果帧被显示的时间量未均匀地间隔,那么用户可在视觉上看见并察觉到较低帧速率(这有效地造成卡顿)。这标称地称为帧卡顿或微卡顿。需要克服由多个GPU渲染的应用(诸如3D应用)的视觉的和/或察觉到的帧卡顿和/或微卡顿的方法和系统。概述本文描述用于帧调步的方法和系统。一般来说,帧调步添加将后续帧的显示均匀地间隔开的延迟,以及在应用程序工作负载改变时测量并调整所述延迟的测量机构。附图简述可以从结合附图以举例方式给出的以下描述中获得更详细的了解,在附图中:图1是其中可实现一个或多个所公开实施方案的示例性装置的框图;图2是根据一些实施方案的示例性图形渲染管线;图3是双图形处理单元(GPU)中的渲染的实例;图4是根据一些实施方案的用于帧调步的示例性高级框图;图5是根据一些实施方案的用于帧调步的示例性流程图;图6是根据一些实施方案的用于帧调步的另一个示例性流程图;图7是根据一些实施方案的用于帧调步的序列图的实例;图8是根据一些实施方案的用于双GPU架构中的帧调步的序列图的实例;图9是根据一些实施方案的用于用一个定时器进行帧调步的序列图的实例;图10是根据一些实施方案的用于帧调步的序列图中的动作的实例;图11是对称架构中的卡顿的示例性图;图12是根据一些实施方案的对称架构中的帧调步或抗卡顿的示例性图;图13是对称架构中的卡顿的示例性图,其中图14是对称架构中的卡顿的示例性图,其中TSDMA>TGFX;图15是缓慢从情景中的卡顿的示例性图;图16是根据一些实施方案的缓慢从情景中的抗卡顿的示例性图;图17是根据一些实施方案的缓慢从情景中的抗卡顿的示例性图,其中非对称交火(ACF)是1:2并且其中“1”是瓶颈;并且图18是根据一些实施方案的缓慢从情景中的抗卡顿的示例性图,其中ACF是1:2并且其中“2”是瓶颈。详述本文描述用于帧调步的方法和系统。一般来说,关于渲染帧所花费的时间进行估算。这可通过测量图形处理单元(GPU)渲染帧所花费的时间来完成。若干最近帧的平均值用来消除帧到帧的工作负载差异和GPU的渲染速度差异。创建控制GPU的进度并且消除它们的呈现的心跳。在驱动器(例如,内核模式驱动器(KMD))中等待所确定的适当时间量,使得帧均匀地间隔。帧调步实质上使一个GPU中的帧翻转延后,所述一个GPU相对于另一个GPU出现得太早。图1是其中可实现一个或多个所公开实施方案的示例性装置100的框图。装置100可包括例如计算机、游戏装置、手持式装置、机顶盒、电视、移动电话或平板计算机。装置100包括处理器102、存储器104、存储装置106、一个或多个输入装置108和一个或多个输出装置110。装置100还可任选地包括输入驱动器112和输出驱动器114。应理解的是,装置100可包括图1中未展示的另外部件。处理器102可包括中央处理单元(CPU)、图形处理单元(GPU)、位于同一芯片上的CPU和GPU,或一个或多个处理器核心,其中每个处理器核心可以是CPU或GPU。存储器104与处理器102可位于同一芯片上,或可与处理器102分开定位。存储器104可包括易失性或非易失性存储器,例如随机存取存储器(RAM)、动态RAM或高速缓存。GPU可以是相同类型的GPU(对称交火)或不同类型的GPU(非对称交火(ACF))。例如,处理器或系统中的GPU可包括但不限于加速处理单元(APU)、离散GPU(dGPU)和/或其组合。存储装置106可包括固定存储装置或可移动存储装置,例如硬盘驱动器、固态驱动器、光盘或闪存驱动器。输入装置108可包括键盘、小键盘、触摸屏、触摸板、检测器、麦克风、加速计、陀螺仪、生物识别扫描器或网络连接(例如,用于发射和/或接收无线IEEE802信号的无线局域网卡)。输出装置110可包括显示器、扬声器、打印机、触觉反馈装置、一个或多个灯、天线或网络连接(例如,用于发射和/或接收无线IEEE802信号的无线局域网卡)。输入驱动器112与处理器102和输入装置108通信,并且容许处理器102接收来自输入装置108的输入。输出驱动器114与处理器102和输出装置110通信,并且容许处理器102向输出装置110发送输出。应指出的是,输入驱动器112和输出驱动器114为任选部件,并且在输入驱动器112和输出驱动器114不存在的情况下,装置100将以相同方式操作。图2是示例性图形渲染管线200。出于说明目的并且为了提供上下文,图形渲染管线200被展示为使用基于的操作系统(O/S),但可使用任何O/S。一般来说,图形渲染管线200包括应用模块/层/实体205、O/S模块/层/实体210、驱动器模块/层/实体220和硬件230。术语模块/层/实体在本文中将统称为实体。应用实体205除其他功能性之外处置用户输入。应用实体205包括模拟器207,所述拟器207例如更新例如相对于游戏世界的对象位置、物理等。模拟器207联接或连接(在本文中称为连接)到渲染器209,所述渲染器209通过例如Direct3DAPI创建绘制调用以生成帧。渲染器209联接到Direct3D运行时间实体211,所述Direct3D运行时间实体211解析命令并且通过DDI接口调用用户模式驱动器(UMD)222。UMD222生成GPU命令缓冲区并且将它们提交给O/S210,并且具体地,提交给Direct3D运行时间实体211。GPU命令缓冲区然后被放置在上下文队列213中,直到O/S210内核调度器215准备接受它们为止。GPU命令缓冲区被传递到内核模式驱动器(KMD)224,所述内核模式驱动器(KMD)224处理它们并且将它们发送到GPU232。当帧已经完成渲染并且可被显示时,应用实体205发送呈现调用。所述呈现调用沿循与绘制调用相同的逻辑路径。图3在视觉上展示当使用多GPU架构进行图形处理时的微卡顿问题。一般来说,多个GPU之间的工作指配或分配使用称为交替帧渲染(AFR)的过程,在所述过程中,与多个GPU中的每一个在相同帧的一部分上工作相对比,每个GPU得到其自己的帧。当每个GPU的输出被调步以使得每个GPU正在以尽可能均匀的速率递送所渲染帧时,AFR工作良好。例如,如图3中所示,在单GPU(SGPU)流300中,帧一个接一个地被渲染并呈现。在理想的双GPU流305中,当GPU0大致完成其帧的一半时,GPU1的输出完成。然而,实际的双GPU流310中展示实际上所发生的情况。如果GPU1的帧在接近GPU0完成渲染时被完成,那么所渲染的第一帧在屏幕上显示的时间将少于第二或后续帧。如果显示帧的时间量未均匀地间隔,那么用户可在视觉上看见并察觉到较低帧速率,即本文档来自技高网...
用于帧调步的方法和系统

【技术保护点】
一种用于在渲染过程中进行帧调步的方法,所述方法包括:估算多个图形处理单元(GPU)中的每一个的帧渲染时间;基于至少所估算的帧渲染时间来确定延迟;以及将所述延迟插入所述渲染过程中以便以均匀间隔的方式渲染帧。

【技术特征摘要】
【国外来华专利技术】2014.08.08 US 62/035,1241.一种用于在渲染过程中进行帧调步的方法,所述方法包括:估算多个图形处理单元(GPU)中的每一个的帧渲染时间;基于至少所估算的帧渲染时间来确定延迟;以及将所述延迟插入所述渲染过程中以便以均匀间隔的方式渲染帧。2.如权利要求1所述的方法,其中所述延迟基于所述GPU上的应用程序工作负载来动态调整。3.如权利要求1所述的方法,其中所估算的帧渲染时间是对预定量的帧取得的平均值。4.如权利要求1所述的方法,其中基于至少所述延迟建立心跳以控制所述渲染过程和帧呈现。5.如权利要求1所述的方法,其中使用至少一个定时器来启动所述延迟。6.如权利要求1所述的方法,其中使用时间戳查询来确定所估算的帧渲染时间。7.如权利要求1所述的方法,其中所述延迟在内核模式驱动器(KMD)中实现。8.如权利要求7所述的方法,其中虚设可调度引擎在所述KMD中被创建以实现所述延迟。9.如权利要求1所述的方法,其中呈现在所述延迟期满或所述渲染过程完成中的较后者处发生。10.一种用于在...

【专利技术属性】
技术研发人员:乔纳森·劳伦斯·坎贝尔米切尔·H·辛格沈玉萍卓悦
申请(专利权)人:超威半导体公司
类型:发明
国别省市:美国;US

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

1