用于在桌面环境中动态地减少应用程序渲染到屏幕上时间的方法设备技术

技术编号:21739502 阅读:45 留言:0更新日期:2019-07-31 20:51
提供了一种系统,所述系统包括计算装置(15),所述计算装置可操作以渲染视频内容以供在显示装置(20)上显示,并且周期性地刷新该显示装置。所述视频内容包括至少一个应用程序窗口(35)。桌面合成器(90)可操作以唤醒并执行命令来合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置。高分辨率计时器(92)可操作以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。

Method device for dynamically reducing application rendering time to the screen in a desktop environment

【技术实现步骤摘要】
【国外来华专利技术】用于在桌面环境中动态地减少应用程序渲染到屏幕上时间的方法设备相关申请的交叉引用本申请要求于2016年10月31日提交的美国专利申请No.15/338,492的优先权,所述美国专利申请的全部内容特此以引用的方式并入本文中。1.
本专利技术大体涉及计算系统和软件,并且更具体地说,涉及用于显示图形内容的计算系统和软件。2.专利技术背景大多数调制解调器计算机操作系统包括以全屏模式(或甚至全屏独占模式)或窗口化模式显示应用程序的能力。一些常规计算机监视器具有固定刷新率,而其它计算机监视器可以动态地刷新。在常规计算机系统中,首先通过渲染硬件(例如图形处理单元(GPU))来渲染或创建用于在监视器上显示的内容,并且接着将其存储在两个缓冲区中的一者中,所述两个缓冲区通常是系统存储器或GPU存储器/高速缓存中的地址位置。许多常规系统在所谓的双缓冲方案中使用两个缓冲区。一个缓冲区(通常称为前缓冲区)保存当前显示在监视器上的渲染内容。另一缓冲区(通常是后缓冲区)保存等待在下一适当时间显示的渲染内容。当操作系统确定应显示后缓冲区内容时,执行反转,其中显示器切换到显示后缓冲区的内容。在窗口化模式下,渲染过程包括渲染每个打开的应用程序的内容以及桌面和任务栏以及菜单的任何未占用部分,并且此后将这些个别图形部分合成到合成表面中,接着在显示器上逐帧显示该合成表面。此后一过程称为桌面合成,并且通常由称为桌面合成器的操作系统进程执行。桌面合成器是系统进程,其通常以与监视器刷新率相关的固定间隔唤醒,以便将多个应用程序窗口合成扫描并且显示在监视器上的单个表面。常规操作系统通常使用称为垂直同步或VSYNC的过程来避免称为“撕裂”的现象,其中显示器示出具有不同内容的两个渲染帧的部分。在启用VSYNC时,每个缓冲区反转只能在每次刷新后发生。这有效地限制了监视器刷新率下的帧渲染率。VSYNC还会在桌面合成器唤醒时设置固定间隔。以全屏独占模式运行的当前应用程序在应用程序完成其渲染与内容出现在具有动态刷新率技术的监视器之间具有非常小的时延(<1ms)。这是由于以下事实:应用程序直接控制到后缓冲区的反转,接着在渲染完成后立即引发反转。然而,对于具有额外桌面合成步骤的窗口化应用程序,时延非常高,并且对于典型的60Hz显示器,可能会高达33.3ms。此延迟包括:(1)等待桌面合成器线程唤醒所花费的时间;以及(2)在渲染硬件可以反转前后缓冲区之前等待VSYNC边界(下次固定刷新)所花费的时间。这导致明显的视觉停顿。如果有可能最小化或至少减少此时延,则窗口化应用程序可以表现得接近于全屏独占模式应用程序的性能,并且在动态刷新率监视器上实现低时延和无停顿的视觉体验。10引入了模拟全屏独占模式,其具有传统全屏独占的低时延优势,以及快速任务切换的便利性。然而,此实施方式并不涵盖所有窗口化应用程序,并且还具有基于GPU是否能够在两种完全不同的表面格式(桌面合成器表面与应用程序表面)之间无缝反转的限制。在另一常规技术中,用户可以选择直接以全屏独占模式运行以获得低时延体验。但缺点包括焦点在应用程序之间切换时的长任务切换时间,尤其是在用户可以在使用在不同监视器上运行的应用程序之间切换的多显示器配置中。另一缺点是某些应用程序根本不具有以全屏独占模式运行的选项。此外,桌面合成器无法在屏幕上叠加有用的内容,例如音量或亮度控件。本专利技术旨在克服或减少一个或多个前述缺点的影响。
技术实现思路
根据本专利技术的一个方面,提供了一种系统,所述系统包括计算装置,所述计算装置可操作以渲染视频内容以供在显示装置上显示,并且周期性地刷新该显示装置。所述视频内容包括至少一个应用程序窗口。桌面合成器可操作以唤醒并执行命令来合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置。高分辨率计时器可操作以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。根据本专利技术的另一方面,提供了一种方法,所述方法包括渲染视频内容以供在显示装置上显示,并且周期性地刷新该显示装置。所述视频内容包括至少一个应用程序窗口。操作桌面合成器以唤醒并执行命令以合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置。操作高分辨率计时器以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。根据本专利技术的另一方面,在包括第一计算系统的系统中,所述第一计算系统具有显示装置,并且可操作以渲染视频内容以供在所述显示装置上显示,并且周期性地刷新该显示装置,所述视频内容包括至少一个应用程序窗口,一种方法包括渲染所述视频内容以供在显示装置上显示并且周期性地刷新该显示装置。操作桌面合成器以唤醒并执行命令以合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置。操作高分辨率计时器以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。根据本专利技术的另一方面,一种非暂时性计算机可读介质具有用于执行方法的计算机可读指令。所述方法包括渲染视频内容以供在显示装置上显示,并且周期性地刷新该显示装置。所述视频内容包括至少一个应用程序窗口。操作桌面合成器以唤醒并执行命令以合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置。操作高分辨率计时器以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。附图说明通过阅读以下详细描述并且参考附图,本专利技术的前述和其它优点将变得显而易见,其中:图1是包括计算机和显示器或监视器的计算系统的示例性实施方案的示图;图2是示例性计算系统的框图;图3是类似于图1的示图,但在显示器上描绘单个窗口化模式应用程序;图4是描绘示例性常规视频渲染和缓冲区反转方法的活动图;图5是类似于图4的活动图,但描绘了简化的示例性常规视频渲染和缓冲区反转方法;图6是类似于图5的活动图,但描绘了新视频渲染和缓冲区反转方法的示例性实施方案;图7是类似于图5的活动图,但描绘了另一简化的示例性常规视频渲染和缓冲区反转方法;图8是类似于图7的活动图,但描绘了新视频渲染和缓冲区反转方法的另一示例性实施方案;图9是类似于图7的活动图,但描述了简化的示例性常规视频渲染和缓冲区反转方法的额外方面;图10是类似于图8的活动图,但描绘了新视频渲染和缓冲区反转方法的示例性实施方案的额外方面;图11是描绘以减少的反转时延渲染视频内容的示例性方法的流程图;以及图12是描绘启用或不启用动态计时器频率的示例性渲染的流程图。具体实施方式公开了可操作以利用窗口化模式的应用程序渲染视频的计算系统的各种实施方案。一种变型可操作以渲染视频内容以供在显示装置上显示并且周期性地刷新该显示装置。所述视频内容包括至少一个应用程序窗口。可以是操作系统进程的桌面合成器可操作以唤醒并执行命令来合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置。高分辨率计时器可操作以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。在常规系统中,桌面合成器仅在每个刷新循环之后唤醒并且执行一次,这引入了缓冲区反转的延迟。现在将描述额外本文档来自技高网
...

【技术保护点】
1.一种系统,所述系统包括:计算装置(10),所述计算装置可操作以渲染视频内容以供在显示装置(20)上显示,并且周期性地刷新该显示装置,所述视频内容包括至少一个应用程序窗口(35);桌面合成器(90),所述桌面合成器可操作以唤醒并执行命令来合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置;以及高分辨率计时器(92),所述高分辨率计时器可操作以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。

【技术特征摘要】
【国外来华专利技术】2016.10.31 US 15/338,4921.一种系统,所述系统包括:计算装置(10),所述计算装置可操作以渲染视频内容以供在显示装置(20)上显示,并且周期性地刷新该显示装置,所述视频内容包括至少一个应用程序窗口(35);桌面合成器(90),所述桌面合成器可操作以唤醒并执行命令来合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置;以及高分辨率计时器(92),所述高分辨率计时器可操作以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。2.如权利要求1所述的系统,其中所述显示装置能够以动态刷新率操作。3.如权利要求1所述的系统,其中所述计算装置包括操作系统(80),所述桌面合成器是所述操作系统的一部分。4.如权利要求1所述的系统,其中所述高分辨率计时器是视频驱动器(85)的一部分。5.如权利要求1所述的系统,所述系统包括视频驱动器(85),所述高分辨率计时器是所述视频驱动器的一部分。6.如权利要求1所述的系统,其中所述显示装置(20)在启用VSYNC计时的情况下操作,所述高分辨率计时器可操作以使所述桌面合成器独立于所述VSYNC计时而唤醒并执行所述命令。7.如权利要求1所述的系统,其中所述高分辨率计时器可操作以在下次刷新之前向所述桌面合成器报告缓冲区可用于渲染。8.如权利要求1所述的系统,其中所述高分辨率计时器被配置成基于所述视频内容而以动态可调节频率操作。9.一种方法,所述方法包括:渲染视频内容以供在显示装置(20)上显示,并且周期性地刷新该显示装置,所述视频内容包括至少一个应用程序窗口(35);操作桌面合成器(90)以唤醒并执行命令以合成作为包括所述至少一个应用程序窗口的合成表面的视频帧,并且引发缓冲区反转以将所述视频帧递送到所述显示装置;以及操作高分辨率计时器(92)以使所述桌面合成器在显示刷新之间的多个实例中唤醒并执行所述命令。10.如权利要求9所述的方法,以动态刷新率操作所述显示装置。11.如权利要求9所述的方法,其中所述桌面合成器是操作系统(80)的一部分。12.如权利要求11所述的方法,其中所述高分辨率计时器是所述操作系统的一部分。13.如权利要求9所述的方法,其中所述高分辨率计时器是视频驱动器(85)的一部分...

【专利技术属性】
技术研发人员:安东尼·威尔·古萨伊德·阿塔尔·侯赛因
申请(专利权)人:ATI科技无限责任公司
类型:发明
国别省市:加拿大,CA

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

1