自适应远程计算的制作方法

文档序号:9794012阅读:288来源:国知局
自适应远程计算的制作方法
【技术领域】
[0001]本发明涉及计算领域,具体地,涉及与自适应远程计算相关联的设备、方法和存储介质。
【背景技术】
[0002]在此提供的【背景技术】描述是为了通常呈现本发明的上下文的目的。除非在本文中特别指出,否则在这一部分描述的材料对于本申请中的权利要求不是现有技术并且不被允许通过包括在这一部分中而作为现有技术。
[0003]在通用微处理器、连网以及相关联技术中的发展推动了远程计算的进一步发展。当前,很多应用是在计算云中执行的。普通的云应用,例如云游戏,典型地在云侧也被称为服务器侧或者远程侧执行大部分再现。但是,响应时间可能并非总是很好,尤其是在拥塞网络条件下。
【附图说明】
[0004]通过下面结合附图的详细描述,可以很容易理解实施例。为了有利于该描述,类似的参考标记表示类似的结构单元。实施例是通过举例的方式在附图的图中示出的,而不是通过限制的方式。
[0005]附图1示出了根据多个实施例的,合并了本发明的教导的用于自适应远程计算的示例性的计算设置的总体图。
[0006]附图2示出了根据多个实施例的显示帧以及与产生显示帧相关联的图形调用。
[0007]附图3示出了根据多个实施例的用于自适应远程计算的客户端侧的处理。
[0008]附图4示出了根据多个实施例的用于自适应远程计算的远程侧的处理。
[0009]附图5示出了根据多个实施例的适合于实现本发明的示例性计算环境。
[0010]附图6示出了根据多个实施例的,具有被配置为使得设备实现本发明的各个方面的指令的示例性存储介质。
【具体实施方式】
[0011]在此公开了与操作应用相关联的设备、方法和存储介质。在实施例中,一种方法可通过应用的客户端侧在客户端计算装置上本地创建该应用的图形上下文。该图形上下文可包括多个与产生该应用的显示帧相关联的再现资源。该应用的客户端侧可能通过该应用的远程侧使得在远程计算资源的集合上创建图形上下文的副本。该应用的客户端侧随后可自适应地使得本地或者远程产生显示帧。该应用的一个例子是基于云的游戏应用,其具有作为计算云的计算资源的远程计算资源的集合。
[0012]在实施例中,该应用的客户端侧可在显示帧的开始以及显示帧的结束做出是否本地或者远程产生显示帧的确定。在显示帧的开始,应用的客户端侧可至少部分基于例如客户端计算装置的图形单元的能力,和/或耦合客户端计算装置和远程计算资源的集合的网络的带宽来做出确定。在显示帧的结束,被配置为打包和发送图形调用使得远程产生显示帧的应用的客户端侧的包装器可重确定是否确实远程产生显示帧或者改为本地产生。该重确定可进一步基于例如显示帧的复杂度。
[0013]在实施例中,例如智能电话或者计算平板的一个设备可包括一个或者多个处理器,以及具有被配置为使得该设备响应于一个或者多个处理器的操作来执行任意上述方法和它们的变形的应用的客户端侧的存储介质。在实施例中,至少一个存储介质可包括配置为响应于由该设备执行使得该设备而执行任意上述方法和它们的变形的指令。
[0014]在后面的详细描述中,参考了作为描述的一部分的附图,其中贯穿全文,相似的标记表示相似的部分,并且其中通过可被实现的示范实施例的方式来示出。应当理解其它实施例可能被使用并且在不超出本发明的范围的情况下做出结构和逻辑改变。因此,下面的详细描述不是限制意义,而实施例的范围是通过附加的权利要求及其等同替换来定义的。
[0015]各种操作可被以最有助于理解要求保护的主题的方式描述为多个单独的动作或者连续的操作。但是,描述的顺序不应被解释为意味是这些操作必须按照顺序。特别是,描述的操作可以不按照呈现的顺序执行。描述的操作可能以与描述的实施例不同的顺序执行。在附加实施例中,各种附加的操作可以被执行和/或描述的操作可以被省略。
[0016]为了本发明的目的,短语“A和/或B”意思是(A)、(B)或者(A和B)。为了本发明的目的,短语“A、B、和/或C"意思是(A)、(B)、(C)、(A和B)、(A和C)、(B和C),或者(A、B和C)。
[0017]本描述可能使用短语“在一个实施例中,”或者“在实施例中,”,它们的每一个指的是一个或者多个相同的或者不同的实施例。此外,如针对发明的实施例使用的术语“包含”、“包括”、“具有”之类的是相同的意思。
[0018]如包括权利要求书的下文使用的术语“模块”被认为包括专用集成电路(“ASIC")、电子电路、执行一个或者多个软件或者固件程序的处理器(共享的、专用的,或者群组)和/或存储器(共享的、专用的,或者群组)、组合逻辑电路、和/或其它提供描述的功能的合适的部件或者是以上所列的一部分。术语“封闭字幕”将包括传统的封闭字幕和/或子标题。
[0019]现在参考附图1,示出了一种根据多个实施例的合并了本发明的教导的用于自适应远程计算的示例性计算设置的总体图。如所示,在实施例中,计算设置100可包括通过网络106彼此耦合的客户端计算装置102以及计算云104。客户端计算装置102可包括彼此耦合的如所示的处理器和存储器设置112,以及多个外部装置,例如存储装置114、图形处理单元(GPU)116、连网接口(NIC)IlS以及显示器单元120。处理器和存储器设置112可被配置为主机并且操作操作系统和服务及应用,例如应用的客户端侧122,其可具有应用的远程侧142。在实施例中,应用的远程侧142可在计算云104的一些计算资源132上操作。在实施例中,应用的客户端侧122和远程侧124可配置有本发明的教导从而使得应用的显示帧能够被在客户端计算装置102或者计算云104上自适应地产生。结果是,该应用的用户体验可被潜在地增强。下面另外参考附图2-6进一步描述这些和其它方面。
[0020]现在仍然参考附图1,在实施例中,应用的客户端侧122可被配置为确定显示帧是否在计算装置102上例如使用GPU 116本地或者例如使用计算云104的计算资源132远程产生。应用的客户端侧122可被配置为在显示帧的开始,以及显示帧的结束做出本地或者远程产生确定。在每一个确定时,应用的客户端侧122可考虑一个或者多个因素,包括但是不限制于,例如网络106的带宽、GPU 116的能力和/或显示帧的复杂度。
[0021]在实施例中,应用的客户端侧122可被配置为在客户端计算装置102上创建和保存包括多个与产生显示帧相关联的再现资源的图形上下文123。再现资源的例子包括但是不限制于纹理、索引缓冲器、顶点缓冲器、实例缓冲器或者着色器。此外,应用的客户端则122可能被配置为例如通过应用的远程侧142在计算云104的计算资源132上产生将要被创建和保持的图形上下文143的副本。换句话说,每一次应用的客户端侧122在客户端计算装置102上创建或者更新图形上下文123的再现资源时,例如创建纹理或者缓冲器时,应用的客户端侦打22还可请求应用的远程侧142在计算云104上创建或者更新图形上下文143的副本中的再现资源,例如创建相同的纹理或者缓冲器。在实施例中,应用的客户端侧122还产生将要分配给再现资源的标识符,例如,纹理_A、纹理_B、缓冲器_A、缓冲器_B等等。
[0022]现在再参考附图2,其中示出了根据本发明的多个实施例的显示帧和与产生显示帧相关联的图形调用。如所示,每一个显示帧202可能包括通过帧起始标记204和帧结束标记208限制的边界的帧内容部分206。每一个帧内容部分206包括多个图形调用210。各种各样的图形调用,例如,但是不限制于,用于产生纹理和/或着色的图形调用,并且具有相关联的数据。一些这些相关联数据可能具有实质数量。图形调用的例子,除了产生纹理和/或着色的调用之外,可能包括,但是不限制于,更新或者清空缓冲器,再现到目标的调用等等。
[0023]在实施例中,如在附图1中所示,应用的客户端侧122可包括图形调用包装器124、打包器126和解包器128。反之,应用的远程侧142可包括处理引擎144、打包器146和解包器148。图形调用包装器124(或者此后,简称为“包装器”)被配置为截取图形调用和与产生显示帧相关联的相关联数据。在实施例中,包装器124被配置为响应于确定例如在显示帧的开始远程产生显示帧,截取图形调用和与产生显示帧相关联的相关联数据。在截取后,包装器124被配置为将图形调用和相关联数据保存到例如存储装置114中。此外,包装器124被配置为修改后续的(非再现资源创建)图形调用以通过它们的标识符来参考再现资源,从而潜在地降低传输图形调用(无相关联数据)给应用的远程侧142以处理所需要的带宽,以及产生显示帧。在处理图形调用中,应用的远程侧144将操作在通过标识符参考的再现资源的远程副本上。
[0024]在实施例中,客户端侧122的打包器126可被配置为编码和/或压缩图形调用(以及它们的相关联数据,如果在选择的情况下包括的话)从而被发送到应用的远程侧142,从而潜在地进一步降低将图形调用传输到应用的远程侧142所需要的网络106的带宽。远程侧142的解包器148可被配置为解码和/或解压缩打包的图形调用(以及它们的相关联数据,如果包括)以用于处理引擎144。处理引擎144可被配置为处理图形调用从而产生显示帧,其操作在通过标识符参考的再现资源的远程副本上,如之前描述的。
[0025]远程侧142的打包器146可被配置为编码和/或压缩在计算云104上产生的显示帧,从而准备将它们传输到客户端计算装置102,以便于潜在地降低将显示帧传输到应用的客户端侧122所需的网络106的带宽。客户端侧122的解包器128
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1