发布信息

用于减少渲染信息的传输的方法和装置与流程

作者:admin      2022-09-02 21:02:40     334



计算;推算;计数设备的制造及其应用技术用于减少渲染信息的传输的方法和装置1.根据35u.s.c.第119条要求优先权2.本技术要求2019年11月4日提交的美国非临时申请第16/673,564号的优先权和权益,该申请通过引用明确并入本文。技术领域3.本公开总体上涉及处理系统,并且更具体地涉及用于图形处理的一种或多种技术。背景技术:4.计算设备通常利用图形处理单元(gpu)来加速用于显示的图形数据的渲染。这种计算设备可以包括例如计算机工作站、诸如所谓的智能电话之类的移动电话、嵌入式系统、个人计算机、平板计算机和视频游戏控制台。gpu执行包括一个或多个处理阶级的图形处理管线,该一个或多个处理阶级一起操作以执行图形处理命令并输出帧。中央处理单元(cpu)可以通过向gpu发出一个或多个图形处理命令来控制gpu的操作。现代cpu通常能够同时执行多个应用,每个应用在执行期间可能需要利用gpu。在显示器上提供用于视觉呈现的内容的设备通常包括gpu。5.通常,设备的gpu被配置为在图形处理管线中执行处理。然而,随着无线通信和更小的手持设备的出现,对改进图形处理的需求不断增加。技术实现要素:6.以下呈现了一个或多个方面的简化概述,以便提供对这样的方面的基本理解。该概述不是所有预期方面的广泛概述,并且既不旨在标识所有方面的关键元素,也不旨在描绘任何或所有方面的范围。其唯一目的是以简化形式呈现一个或多个方面的一些概念,作为稍后呈现的更详细描述的序言。7.在本公开的一个方面,提供了一种方法、计算机可读介质和装置。该装置可以是中央处理单元(cpu)、图形处理单元(gpu)或能够执行图形处理的任何装置。该装置可以确定显示区域或中间渲染目标缓冲器的部分,其中显示区域的该部分可以基于显示区域或中间渲染目标缓冲器的显示内容来确定。该装置还可以通信与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息。另外,该装置可以更新与显示区域的确定部分相对应的显示信息。该装置还可以通信与显示区域或中间渲染目标缓冲器的确定部分相对应的更新显示信息。该装置还可以渲染与显示区域或中间渲染目标缓冲器的确定部分相对应的显示区域的至少一些显示内容。此外,该装置可以确定与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息。该装置还可以将与显示区域的确定部分相对应的显示信息从系统存储器复制到gpu内部存储器(gmem)。该装置还可以将与显示区域或中间渲染目标缓冲器的确定部分相对应的更新显示信息存储在gmem中。该装置还可以将与显示区域的确定部分相对应的更新显示信息复制到gmem。该装置还可以将与显示区域的确定部分相对应的更新显示信息存储在系统存储器或动态随机存取存储器(dram)中。该装置还可以将与显示区域的确定部分相对应的更新显示信息复制到系统存储器或dram中。该装置还可以基于显示区域的显示内容来识别显示区域的确定部分。8.本公开的一个或多个示例的细节在附图和以下描述中阐述。本公开的其他特征、目的和优点将从描述和附图以及从权利要求中显而易见。附图说明9.图1是示出了根据本公开的一种或多种技术的示例内容生成系统的框图。10.图2示出了根据本公开的一种或多种技术的示例gpu。11.图3示出了根据本公开的一种或多种技术的示例图像或表面。12.图4示出了根据本公开的一种或多种技术的包含系统存储器和gmem的示例图。13.图5示出了根据本公开的一种或多种技术的包含系统存储器和gmem的示例图。14.图6示出了根据本公开的一种或多种技术的示例方法的示例流程图。具体实施方式15.即使整个图块(tile)或分格(bin)没有被渲染,一些gpu也可以对整个图块或分格执行解除解析和解析操作。通过这样做,这些gpu正在将对应于该图块的不必要的数据量从系统存储器传输到gmem,并且再传输回来。此外,当正在渲染图块的部分时,对整个图块或分格进行解除解析和解析会浪费存储器带宽和系统功率。通过减少在系统存储器和gpu存储器之间复制或传输的数据量,可以提高gpu性能和/或降低gpu功耗。本公开的各方面可以通过传输与图块的渲染区域相对应的数据来减少不必要的解除解析和解析操作的量。因此,本公开的各方面可能不会传输每个图块的所有数据或信息。为了减少不必要的解除解析和解析操作,本公开的各方面可以确定或通信与图块的渲染区域相对应的数据。在一些方面,这可以被称为有条件的解除解析和解析机制,其可以提高gpu性能和/或降低gpu功耗。16.下文将参考附图更全面地描述系统、装置、计算机程序产品和方法的各个方面。然而,本公开可以以许多不同的形式实施,并且不应被解释为限于贯穿本公开呈现的任何特定结构或功能。相反,提供这些方面是为了使本公开彻底和完整,并将本公开的范围完全传达给本领域技术人员。基于本文的教导,本领域技术人员应理解,本公开的范围旨在覆盖本文公开的本公开的系统、装置、计算机程序产品和方法的任何方面,无论是独立于本公开的其他方面还是与本公开的其他方面组合地实施。例如,可以使用本文阐述的任何数量的方面来实现装置或实践方法。另外,本公开的范围旨在覆盖这样的装置或方法,该装置或方法使用除本文阐述的本公开的各个方面以外或之外的其他结构、功能、或结构和功能来实践。本文公开的任何方面可以由权利要求的一个或多个要素来体现。17.尽管本文描述了各个方面,但是这些方面的许多变化和置换都落入本公开的范围内。尽管提到了本公开各方面的一些潜在益处和优点,但是本公开的范围并不旨在局限于特定的益处、用途或目标。相反,本公开的方面旨在广泛适用于不同的无线技术、系统配置、网络和传输协议,其中一些在附图和以下描述中以示例的方式示出。详细描述和附图仅仅是对本公开的说明而不是限制,本公开的范围由所附权利要求及其等同物限定。18.参考各种装置和方法来呈现若干方面。这些装置和方法在以下详细描述中进行描述,并通过各种框、组件、电路、过程、算法和或类似物(统称为“元件”)在附图中图示。可以使用电子硬件、计算机软件或其任何组合来实施这些元件。将这些元件实施为硬件或软件取决于特定的应用和施加在整个系统上的设计约束。19.举例来说,元件或元件的任何部分或元件的任何组合可以被实施为包含一个或多个处理器(也可以称为处理单元)的“处理系统”。处理器的示例包含微处理器、微控制器、图形处理单元(gpu)、通用gpu(gpgpu)、中央处理单元(cpu)、应用处理器、数字信号处理器(dsp)、精简指令集计算(risc)处理器、片上系统(soc)、基带处理器、专用集成电路(asic)、现场可编程门阵列(fpga)、可编程逻辑设备(pld)、状态机、门控逻辑、分立硬件电路以及其他合适的硬件,这些硬件被配置为执行贯穿本公开中描述的各种功能。处理系统中的一个或多个处理器可以执行软件。软件可以广义地解释为指令、指令集、代码、代码段、程序代码、程序、子程序、软件组件、应用、软件应用、软件包、例程、子例程、对象、可执行文件、执行线程、过程、功能等等,无论是否被称为软件、固件、中间件、微码、硬件描述语言或其他。术语应用可以指软件。如本文所述,一种或多种技术可以指被配置为执行一种或多种功能的应用(即软件)。在这些示例中,应用可以存储在存储器(例如,处理器的片上存储器、系统存储器或任何其他存储器)上。本文描述的硬件(诸如处理器)可以被配置为执行应用。例如,应用可以被描述为包括代码,当由硬件执行时,该代码使硬件执行本文描述的一种或多种技术。作为示例,硬件可以访问来自存储器的代码并且执行从存储器访问的代码以执行本文描述的一种或多种技术。在一些示例中,标识了本公开中的组件。在这些的示例中,组件可以是硬件、软件或其组合。这些组件可以是分开的组件或单个组件的子组件。20.因此,在本文描述的一个或多个示例中,可以以硬件、软件或其任何组合来实施所描述的功能。如果以软件来实施,则该功能可以被储存在计算机可读介质上或在计算机可读介质上被编码为一个或多个指令或代码。计算机可读介质包含计算机存储介质。存储介质可以是计算机可以访问的任何可用介质。通过示例而非限制,这种计算机可读介质可以包括随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、光盘存储、磁盘存储、其他磁存储设备、上述类型的计算机可读介质的组合、或者可以用于储存可以由计算机访问的指令或数据结构形式的计算机可执行代码的任何其他介质。21.总的来说,本公开描述了用于在单个设备或多个设备中具有图形处理管线、改善图形内容的渲染和/或减少处理单元(即,被配置为执行本文描述的一种或多种技术的任何处理单元,诸如gpu)的负载的技术。例如,本公开描述了用于利用图形处理的任何设备中的图形处理的技术。贯穿本公开描述了其他示例性益处。22.如本文所使用的,术语“内容”的实例可以指“图形内容”、“图像”,反之亦然。不管这些术语是用作形容词、名词还是其他词类,都是如此。在一些示例中,如本文所使用的,术语“图形内容”可以指由图形处理管线的一个或多个过程产生的内容。在一些示例中,如本文所使用的,术语“图形内容”可以指由被配置为执行图形处理的处理单元产生的内容。在一些示例中,如本文所使用的,术语“图形内容”可以指由图形处理单元产生的内容。23.在一些示例中,如本文所使用的,术语“显示内容”可以指由被配置为执行显示处理的处理单元生成的内容。在一些示例中,如本文所使用的,术语“显示内容”可以指由显示处理单元生成的内容。图形内容可以被处理成显示内容。例如,图形处理单元可以向缓冲器(其可以被称为帧缓冲器)输出图形内容,诸如帧。显示处理单元可以从缓冲器读取图形内容(诸如一个或多个帧),并在其上执行一种或多种显示处理技术以生成显示内容。例如,显示处理单元可以被配置为在一个或多个渲染层上执行合成以生成帧。作为另一个示例,显示处理单元可以被配置为将两个或更多层合成、混合或以其他方式组合在一起成为单个帧。显示处理单元可以被配置为对帧执行缩放,例如,放大或缩小。在一些示例中,帧可以指层。在其他示例中,帧可以指已经混合在一起形成帧的两个或更多层,即帧包括两个或更多层,并且包括两个或更多层的帧可以随后被混合。24.图1是示出了被配置为实施本公开的一种或多种技术的示例内容生成系统100的框图。内容生成系统100包括设备104。设备104可以包括用于执行本文描述的各种功能的一个或多个组件或电路。在一些示例中,设备104的一个或多个组件可以是soc的组件。设备104可以包括被配置为执行本公开的一种或多种技术的一个或多个组件。在所示的示例中,设备104可以包括处理单元120、内容编码器/解码器122和系统存储器124。在一些方面,设备104可以包括多个可选组件,例如通信接口126、收发器132、接收器128、发送器130、显示处理器127以及一个或多个显示器131。对显示器131的引用可以指一个或多个显示器131。例如,显示器131可以包括单个显示器或多个显示器。显示器131可以包括第一显示器和第二显示器。第一显示器可以是左眼显示器,第二显示器可以是右眼显示器。在一些示例中,第一和第二显示器可以接收不同的帧以在其上呈现。在其他示例中,第一和第二显示器可以接收相同的帧以在其上呈现。在进一步的示例中,图形处理的结果可以不显示在设备上,例如,第一和第二显示器可以不接收任何帧以在其上呈现。代替地,帧或图形处理结果可以被传输到另一个设备。在某些方面,这可以称为拆分渲染。25.处理单元120可以包括内部存储器121。处理单元120可以被配置为诸如在图形处理管线107中执行图形处理。内容编码器/解码器122可以包括内部存储器123。在一些示例中,设备104可以包括显示处理器,诸如显示处理器127,以在由一个或多个显示器131呈现之前对由处理单元120生成的一个或多个帧执行一种或多种显示处理技术。显示处理器127可以被配置为执行显示处理。例如,显示处理器127可以被配置为对处理单元120生成的一个或多个帧执行一种或多种显示处理技术。一个或多个显示器131可以被配置为显示或以其他方式呈现由显示处理器127处理的帧。在一些示例中,一个或多个显示器131可以包括以下中的一个或多个:液晶显示器(lcd)、等离子显示器、有机发光二极管(oled)显示器、投影显示设备、增强现实显示设备、虚拟现实显示设备、头戴式显示器或任何其他类型的显示设备。26.在处理单元120和内容编码器/解码器122外部的存储器(诸如系统存储器124)对于处理单元120和内容编码器/解码器122可以是可访问的。例如,处理单元120和内容编码器/解码器122可以被配置为从外部存储器读取和/或向外部存储器写入,该外部存储器诸如系统存储器124。处理单元120和内容编码器/解码器122可以通过总线通信耦接到系统存储器124。在一些示例中,处理单元120和内容编码器/解码器122可以通过总线或不同的连接彼此通信耦接。27.内容编码器/解码器122可以被配置为从任何源(诸如系统存储器124和/或通信接口126)接收图形内容。系统存储器124可以被配置为存储接收到的经编码或经解码的图形内容。内容编码器/解码器122可以被配置为例如从系统存储器124和/或通信接口126以经编码的像素数据的形式接收经编码或经解码的图形内容。内容编码器/解码器122可以被配置为编码或解码任何图形内容。28.内部存储器121或系统存储器124可以包括一个或多个易失性或非易失性存储器或存储设备。在一些示例中,内部存储器121或系统存储器124可以包括ram、sram、dram、可擦除可编程rom(eprom)、电可擦除可编程rom(eeprom)、闪存、磁数据介质或光存储介质或任何其他类型的存储器。29.根据一些示例,内部存储器121或系统存储器124可以是非暂时性存储介质。术语“非暂时性”可以表示存储介质没有体现在载波或传播信号中。然而,术语“非暂时性”不应被解释为意味着内部存储器121或系统存储器124是不可移动的或者其内容是静态的。作为一个示例,系统存储器124可以从设备104移除并移动到另一个设备。作为另一个示例,系统存储器124可以不从设备104移除。30.处理单元120可以是中央处理单元(cpu)、图形处理单元(gpu)、通用gpu(gpgpu)或可以被配置为执行图形处理的任何其他处理单元。在一些示例中,处理单元120可以集成到设备104的主板中。在一些示例中,处理单元120可以存在于安装在设备104的主板中的端口中的图形卡上,或者可以以其他方式结合在被配置为与设备104互操作的外围设备中。处理单元120可以包括一个或多个处理器,诸如一个或多个微处理器、gpu、专用集成电路(asic)、现场可编程门阵列(fpga)、算术逻辑单元(alu)、数字信号处理器(dsp)、离散逻辑、软件、硬件、固件、其他等效的集成或离散逻辑电路或其任意组合。如果这些技术部分地以软件实施,处理单元120可以将软件的指令存储在合适的非暂时性计算机可读存储介质(例如内部存储器121)中,并且可以使用一个或多个处理器在硬件中执行指令以执行本公开的技术。前述任何一种,包括硬件、软件、硬件和软件的组合等,可以被认为是一个或多个处理器。31.内容编码器/解码器122可以是被配置为执行内容解码的任何处理单元。在一些示例中,内容编码器/解码器122可以集成到设备104的主板中。内容编码器/解码器122可以包括一个或多个处理器,诸如一个或多个微处理器、专用集成电路(asic)、现场可编程门阵列(fpga)、算术逻辑单元(alu)、数字信号处理器(dsp)、视频处理器、离散逻辑、软件、硬件、固件、其他等效的集成或离散逻辑电路或其任意组合。如果这些技术部分地以软件实施,内容编码器/解码器122可以将软件的指令存储在合适的非暂时性计算机可读存储介质(例如内部存储器123)中,并且可以使用一个或多个处理器在硬件中执行指令以执行本公开的技术。前述任何一种,包括硬件、软件、硬件和软件的组合等,可以被认为是一个或多个处理器。32.在一些方面,内容生成系统100可以包括可选的通信接口126。通信接口126可以包括接收器128和发送器130。接收器128可以被配置为执行本文针对设备104描述的任何接收功能。此外,接收器128可以被配置为从另一设备接收信息,例如眼睛或头部定位信息、渲染命令或位置信息。发送器130可以被配置为执行本文针对设备104描述的任何发送功能。例如,发送器130可以被配置为向另一设备发送信息,该信息可以包括对内容的请求。接收器128和发送器130可以组合成收发器132。在这样的示例中,收发器132可以被配置为执行本文针对设备104描述的任何接收功能和/或发送功能。33.再次参考图1,在某些方面,图形处理管线107可以包括确定组件198,确定组件198被配置为确定显示区域或中间渲染目标缓冲器的部分,其中可以基于显示区域或中间渲染目标缓冲器的显示内容来确定显示区域的该部分。确定组件198还可以被配置为通信与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息。确定组件198还可以被配置为更新与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息。确定组件198还可以被配置为通信与显示区域或中间渲染目标缓冲器的确定部分相对应的更新显示信息。确定组件198还可以被配置为渲染与显示区域或中间渲染目标缓冲器的确定部分相对应的显示区域的至少一些显示内容。确定组件198还可以被配置为确定与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息。确定组件198还可以被配置为将与显示区域的确定部分相对应的显示信息从系统存储器复制到gmem。确定组件198还可以被配置为将与显示区域的确定部分相对应的更新显示信息存储在gpu内部存储器(gmem)中。确定组件198还可以被配置为将与显示区域的确定部分相对应的更新显示信息复制到gmem。确定组件198还可以被配置为将与显示区域的确定部分相对应的更新显示信息存储在系统存储器或动态随机存取存储器(dram)中。确定组件198还可以被配置为将与显示区域的确定部分相对应的更新显示信息复制到系统存储器或dram。确定组件198还可以被配置为基于显示区域的显示内容来识别显示区域的确定部分。34.如本文所述,诸如设备104的设备可以指被配置为执行本文所述的一种或多种技术的任何设备、装置或系统。例如,设备可以是服务器、基站、用户设备、客户端设备、站、接入点、计算机(例如个人计算机、台式计算机、膝上型计算机、平板计算机、计算机工作站或大型计算机)、终端产品、装置、电话、智能电话、服务器、视频游戏平台或控制台、手持设备(例如便携式视频游戏设备或个人数字助理(pda))、可穿戴计算设备(例如,智能手表)、增强现实设备或虚拟现实设备、不可穿戴设备、显示器或显示设备、电视、电视机顶盒、中间网络设备、数字媒体播放器、视频流式传输设备、内容流式传输设备、车载计算机、任何移动设备、被配置为生成图形内容的任何设备、或者被配置为执行本文描述的一种或多种技术的任何设备。本文的过程可以被描述为由特定组件(例如,gpu)执行,但是在进一步的实施例中,可以使用与公开的实施例一致的其他组件(例如,cpu)来执行。35.gpu可以在gpu管线中处理多种类型的数据或数据分组。例如,在一些方面,gpu可以处理两种类型的数据或数据分组,例如上下文寄存器分组和绘制调用数据。上下文寄存器分组可以是全局状态信息的集合(例如关于全局寄存器、着色程序或常数数据的信息),其可以规定图形上下文将如何被处理。例如,上下文寄存器分组可以包括关于颜色格式的信息。在上下文寄存器分组的某些方面,可以有一个比特来指示哪个工作负载属于上下文寄存器。此外,可以有多个功能或程序同时和/或并行运行。例如,功能或编程可以描述特定的操作,例如颜色模式或颜色格式。因此,上下文寄存器可以定义gpu的多个状态。36.上下文状态可用于确定个别处理单元(例如顶点提取器(vfd)、顶点着色器(vs)、着色器处理器或几何图形处理器)如何运行,和/或处理单元以何种模式运行。为此,gpu可以使用上下文寄存器和编程数据。在一些方面,gpu可以基于模式或状态的上下文寄存器定义在管线中生成工作负载(例如,顶点或像素工作负载)。某些处理单元(例如vfd)可以使用这些状态来确定某些功能,例如如何组装顶点。由于这些模式或状态可能会发生变化,因此gpu可能需要更改对应的上下文。此外,对应于模式或状态的工作负载可以遵循变化的模式或状态。37.图2示出了根据本公开的一种或多种技术的示例gpu 200。如图2所示,gpu 200包括命令处理器(cp)210、绘制调用分组212、vfd 220、vs 222、顶点缓存(vpc)224、三角形设置引擎(tse)226、光栅化器(ras)228、z处理引擎(zpe)230、像素插值器(pi)232、片段着色器(fs)234、渲染后端(rb)236、l2缓存(uche)238和系统存储器240。尽管图2显示gpu 200包括处理单元220-238,但是gpu 200可以包括许多附加的处理单元。此外,处理单元220-238仅是一个示例,根据本公开,处理单元的任何组合或顺序都可以由gpu使用。gpu 200还包括命令缓冲器250、上下文寄存器分组260和上下文状态261。38.如图2所示,gpu可以利用cp(例如cp 210)或硬件加速器将命令缓冲器解析成上下文寄存器分组(例如上下文寄存器分组260)和/或绘制调用数据分组(例如绘制调用分组212)。cp 210然后可以通过分开的路径向gpu中的处理单元或块发送上下文寄存器分组260或绘制调用数据分组212。此外,命令缓冲器250可以交替不同状态的上下文寄存器和绘制调用。例如,命令缓冲器可以以下述方式构造:上下文n的上下文寄存器、上下文n的(多个)绘制调用、上下文n+1的上下文寄存器和上下文n+1的(多个)绘制调用。39.gpu可以以各种不同的方式渲染图像。在一些情况下,gpu可以使用渲染或图块渲染(tiled rendering)来渲染图像。在图块渲染gpu中,图像可以被划分或分开成不同的区段或图块。在图像的划分之后,可以分开渲染每个区段或图块。图块渲染gpu可以将计算机图形图像划分成网格格式,使得网格的每个部分(即,图块)被分开渲染。在一些方面,在分格阶段(binning pass)期间,图像可以被划分成不同的分格或图块。在一些方面,在分格阶段期间,在可以识别可见图元(primitive)或绘制调用的情况下,可以构建可见性流。40.在一些方面,gpu可以将绘制或渲染过程应用于不同的分格或图块。例如,gpu可以渲染到一个分格,并为分格中的图元或像素执行所有绘制。在渲染到分格的过程期间,渲染目标可以位于gmem。在一些情况下,在渲染到一个分格之后,渲染目标的内容可以被移动到系统存储器,并且gmem可以被释放用于渲染下一个分格。此外,gpu可以渲染到另一个分格,并为该分格中的图元或像素执行绘制。因此,在一些方面,可能有少量的分格(例如四个分格)覆盖一个表面中的所有绘制。此外,gpu可以在一个分格中循环所有的绘制,但是为可见的绘制调用(即包括可见几何图形的绘制调用)执行绘制。在一些方面,可以例如在分格阶段中生成可见性流,以确定图像或场景中每个图元的可见性信息。例如,这个可见性流可以识别某个图元是否可见。在一些方面,该信息可以用于移除例如在渲染阶段中不可见的图元。此外,至少一些被识别为可见的图元可以在渲染阶段中被渲染。41.在图块渲染的一些方面,可能有多个处理段或阶段。例如,渲染可以在两个阶段中执行,例如,可见性或分格可见性阶段,以及渲染或分格渲染阶段。在可见性阶段期间,gpu可以输入渲染工作负载,记录图元或三角形的位置,然后确定哪些图元或三角形落入哪个分格或区域。在可见性阶段的一些方面,gpu还可以识别或标记可见性流中每个图元或三角形的可见性。在渲染阶段期间,gpu可以输入可见性流,并一次处理一个分格或区域。在一些方面,可以分析可见性流以确定哪些图元或图元的顶点可见或不可见。这样,可以处理可见的图元或图元的顶点。通过这样做,gpu可以减少处理或渲染不可见的图元或三角形的不必要工作负载。42.在一些方面,在可见性阶段期间,可以处理某些类型的图元几何图形,例如仅定位几何图形。此外,取决于图元或三角形的定位或位置,图元可以被分类到不同的分格或区域中。在一些情况下,可以通过确定这些图元或三角形的可见性信息来将图元或三角形分类到不同的分格中。例如,gpu可以例如在系统存储器中确定或写入在每个分格或区域中的每个图元的可见性信息。该可见性信息可用于确定或生成可见性流。在渲染阶段中,每个分格中的图元可以被分开渲染。在这些情况下,可见性流可以从用于丢弃对于该分格不可见的图元的存储器中获取。43.gpu或gpu架构的某些方面可以提供许多不同的渲染选项,例如软件渲染和硬件渲染。在软件渲染中,驱动程序或cpu可以通过一次处理每个视图来复写整个帧几何图形。此外,某些不同的状态可能会取决于视图而改变。这样,在软件渲染中,软件可以通过改变可用于为图像中的每个视点进行渲染的一些状态来复写整个工作负载。在某些方面,由于gpu可能会为图像中的每个视点多次提交相同的工作负载,因此可能会增加开销。在硬件渲染中,硬件或gpu可能负责复写或处理图像中每个视点的几何图形。因此,硬件可以管理图像中每个视点的图元或三角形的复写或处理。44.图3示出了图像或表面300,包括划分成多个分格的多个图元。如图3所示,图像或表面300包括区域302,区域302包括图元321、322、323和324。图元321、322、323和324被划分或放置到不同的分格,例如分格310、311、312、313、314和315。图3示出了使用图元321-324的多个视点的图块渲染的示例。例如,图元321-324位于第一视点350和第二视点351中。这样,处理或渲染包括区域302的图像或表面300的gpu可以利用多个视点或多视图渲染。45.如本文所指出的,gpu或图形处理器单元可以使用图块渲染架构来降低功耗或节省存储器带宽。如上进一步所述,该渲染方法可以将场景划分成多个分格,并且包括可见性阶段,该可见性阶段标识每个分格中可见的三角形。因此,在图块渲染中,全屏可以被划分成多个分格或图块。然后,该场景可以被渲染多次,例如,对于每个分格渲染一次或多次。46.在图形渲染方面,一些图形应用可以向单个目标(即渲染目标)渲染一次或多次。例如,在图形渲染中,系统存储器上的帧缓冲器可以被更新多次。帧缓冲器可以是存储器或随机存取存储器(ram)的部分,例如,包含比特图或存储,以帮助存储gpu的显示数据。帧缓冲器也可以是包含数据的完整帧的存储缓冲器。此外,帧缓冲器可以是逻辑缓冲器。在一些方面,更新帧缓冲器可以在分格或图块渲染中执行,其中,如上所述,表面被划分成多个分格或图块,然后每个分格或图块可以被分开渲染。此外,在图块渲染中,帧缓冲器可以被分割成多个分格或图块。47.图形应用可以构建或包括多个缓冲器,例如深度缓冲器和/或具有漫反射颜色的颜色缓冲器。此外,图形应用可以在深度或颜色缓冲器处构建或包括例如针对光线的阴影地图。例如,应用可以在(例如,用于漫反射颜色的)一个缓冲器上运行渲染器,然后移动到另一个缓冲器,例如以创建用于不同的光的阴影。图形应用还可以将其他信息与先前保存在缓冲器中的信息(例如,镜面颜色和/或先前颜色缓冲器上的阴影)相结合。48.如本文所指示的,在分格或图块渲染架构中,例如当从不同类型的存储器渲染时,帧缓冲器可以具有重复存储或写入的数据。这可以称为解析和解除解析帧缓冲器或系统存储器。例如,当存储或写入一个帧缓冲器,然后切换到另一个帧缓冲器时,帧缓冲器上的数据或信息可以从gpu处的gpu内部存储器(gmem)解析到系统存储器,即双数据速率(ddr)ram或动态ram(dram)中的存储器。49.在一些方面,系统存储器也可以是片上系统(soc)存储器或另一种基于芯片的存储器,以例如在设备或智能电话上存储数据或信息。系统存储器也可以是由cpu和/或gpu共享的物理数据存储。在一些方面,系统存储器可以是例如设备或智能电话上的dram芯片。因此,soc存储器可以是基于芯片的方式来存储数据。50.在某些方面,gmem可以是gpu处的片上存储器,其可以由静态ram(sram)实现。此外,gmem可以存储在设备(例如智能电话)上。如本文所指示的,数据或信息可以在系统存储器或dram和gmem之间传输,例如在设备处。在一些方面,系统存储器或dram可以在cpu或gpu处。此外,数据可以存储在ddr或dram处。在分格或图块渲染中,存储器的一小部分可以存储在gpu处,例如在gmem处。在一些情况下,与在帧缓冲器或系统存储器处存储数据相比,在gmem处存储数据可以利用更大的处理工作负载和/或消耗的功率。51.如本文所指出的,在分格或图块渲染中,可以有不同类型的存储器存储(例如系统或soc存储器和gmem或片上存储器)以存储不同的数据或信息(例如特定图块的颜色或深度)。在一些方面,每个图块或分格的渲染数据可以在解除解析或解析过程期间被传输。在解除解析过程期间,数据或信息可以从系统存储器移动到gmem。同样,在解析过程期间,数据或信息可以从gmem移动到系统存储器。然后,可以对下一个分格或图块重复该过程。52.在一些方面,gmem或片上存储器可以具有有限的数据大小。因此,将渲染信息从gmem传输到系统存储器或帧缓冲器的过程可以逐图块地执行。例如,gmem可以具有存储256×256像素的颜色的大小,其可以对应于图块的大小。与gmem的大小相比,帧缓冲器或系统存储器可以具有更大的数据大小,例如,可以存储1920×1080像素的颜色。在一些方面,当分割帧缓冲器(例如,1920×1080个像素)时,这可以基于每个图块的大小(例如,256×256个像素)在多个步骤中执行。53.如上所述,当将数据或信息存储或写入系统存储器或帧缓冲器时,当将数据或信息从系统存储器移动到gmem时,可以解除解析图块或分格。此外,当将数据或信息从gmem移动到系统存储器时,可以解析图块或分格。例如,解析过程可以将例如256×256像素的图块大小的数据或信息传输到系统存储器。本公开的各方面然后可以移动到另一个图块并继续解除解析/解析过程,诸如通过将图块从系统存储器解除解析到gmem、渲染图块以及然后将图块从gmem解析到系统存储器。这个过程可以继续,直到填充整个帧缓冲器。54.如本文所指示的,可以将每个图块的数据从系统存储器移动到gmem(即解除解析过程),然后在渲染之后,可以将数据从gmem移回到系统存储器(即解析过程)。因此,与解析过程相比,解除解析过程可能是数据的反向移动。因为与系统存储器相比,gpu存储器或gmem可以能够存储更少的信息,所以可以执行此解除解析/解析过程。因此,一旦渲染,图块数据可以从gmem移回帧缓冲器,并存储在系统存储器中。这样,图块的渲染数据可以被传输到系统存储器上的帧缓冲器。此外,在一些方面,在解除解析过程期间,当需要在gpu处渲染图块时,存储在帧缓冲器处的数据可以被传输到gmem。因此,可以将一部分帧缓冲器数据从系统存储器传输到gmem,并且在基于该数据进行渲染之后,可以将数据传输回系统存储器处的帧缓冲器。可以对每个分格或图块执行该过程,直到整个表面完成渲染。55.另外,在一些方面,每个图块可以被渲染多次,使得图块的部分被渲染。因此,在解除解析/解析过程期间,渲染数据可以在系统存储器和gmem之间来回传输多次。例如,gpu可以渲染表面或图块的一个方面(例如背景),并且该数据可以存储在系统存储器处,同时渲染表面或图块的其他方面。然后,当渲染场景的另一部分(例如,角色)时,可以将该数据传输回gpu。这个过程也可以称为多路径渲染。56.此外,gpu可以在不同时间渲染场景的不同方面。例如,可以渲染场景的漫反射颜色,然后是光谱颜色,然后是阴影。因此,当在多个路径中渲染图块或分格时,帧缓冲器可以递增地存储数据。此外,在渲染每个分格或图块的过程期间,数据可以在系统存储器和gpu存储器之间来回传输多次。57.在分格渲染gpu中,切换回先前渲染的表面可能涉及对每个分格的许多不同操作。例如,用于分格的某些数据(例如颜色和深度数据)可以从缓冲器(例如系统存储器中的颜色和深度缓冲器)移动到用于颜色和深度的gpu内部存储器。如上所述,该过程可以被称为解除解析过程。然后,可以基于数据(例如,颜色和深度数据)来渲染分格或图块。数据(例如颜色和深度数据)然后可以从用于颜色和深度的gpu内部存储器移动到系统存储器中的缓冲器(例如颜色和深度缓冲器)。如上所述,该过程可以被称为解析过程。58.在一些情况下,当解除解析图块或分格时,可以在渲染图块之前将整个图块从系统存储器传输到gmem。渲染后,整个图块可以从gmem解析到系统存储器。因此,当例如向和/或从系统存储器和gmem传输用于图块的某些数据以便渲染该图块时,可以传输整个图块的数据。如本文所指示的,对于解除解析和解析过程,为了将数据从系统存储器传输到gmem,可能需要gpu功率和性能两者,反之亦然。59.图4示出了根据本公开的一种或多种技术的包括系统存储器和gmem的示例图400。如图4所示,图400包括系统存储器410、系统存储器420、系统存储器430、系统存储器440、gmem 412、gmem 422、gmem 432、显示内容428、解除解析过程414、渲染424、解析过程434。410/420/430/440处的系统存储器可以表示在解除解析/解析过程的不同时间期间gpu或cpu处的系统存储器。412/422/432处的gmem可以表示在解除解析/解析过程的不同时间期间gpu处的gmem。60.如图4所示,在解除解析过程414期间,可以将图块的数据或信息从系统存储器410移动到gmem 412。在渲染424期间,显示内容428(例如太阳)可以针对该图块被渲染。在渲染之后,显示内容428的数据或信息可以被写入或存储到gmem 422。在显示内容428的数据或信息已经被复制和/或存储在gmem 432之后,在解析过程434期间,显示内容428的数据或信息可以从gmem 432移动到系统存储器430。显示内容428的数据或信息可以被复制或存储到系统存储器440。61.图4显示在一些方面,可以更新图块的部分(例如太阳),但是整个图块的数据可以从系统存储器传输到gmem并传输回来。通过传输整个图块的数据,这会浪费大量存储器带宽。当图块的某一部分被渲染时,不渲染图块的整个区域。这也可以应用于某些渲染操作,例如,当渲染颜色和深度存储器时。在一些方面,在分格渲染期间,分格或图块的数据或信息的大量部分在渲染后可能不被写入或更新。例如,渲染时可能不需要更新gmem的某些部分。如图4所示,太阳在424处被渲染,因此分格或图块的其他部分可能不需要渲染。62.如本文所指示的,未被渲染的分格或图块的区域可能不需要解除解析和解析操作。举例来说,当渲染图块的部分时,更新帧缓冲器的部分,因此整个图块的数据可能不需要传输到帧缓冲器或系统存储器。此外,当正在渲染图块的部分时,盲目地对整个图块或分格进行解除解析和解析会浪费存储器带宽和系统功率。因此,解除解析和解析过程通过将整个图块的数据从系统存储器移动到gmem,然后再移回,可能浪费大量带宽。通过减少在系统存储器和gpu存储器之间复制或传输的数据或存储器的数量,可以提高gpu性能和/或降低gpu功耗。63.本公开的各方面可以通过传输与分格或图块的要渲染的区域相对应的数据或信息来减少不必要的解除解析和解析操作的量。因此,本公开的各方面可能不会传输每个图块的所有数据或信息。为了减少不必要的解除解析和解析操作,本公开的各方面可以(例如,当渲染颜色和深度存储器时)确定或检测分格或图块的渲染区域。因此根据本公开的gpu可以解除解析和解析分格或图块的渲染区域。在一些方面,这可以被称为有条件的解除解析和解析机制。64.本公开的各方面可以检测正在被渲染的区域,使得与图块的渲染区域相对应的数据或信息被传输。同样地,来自帧缓冲器(例如,帧缓冲器的一小部分)的图块的必要区域的数据可以被传输到系统存储器和gmem和/或从系统存储器和gmem传输。在一些情况下,本公开的各方面还可以传输整个图块,但更新图块的部分。这可以是有条件的更新,其中图块的可能需要更新的部分被实际更新,使得本公开的各方面可以不更新或渲染图块的不需要更新或渲染的不必要部分。65.如上所述,本公开的各方面可以解除解析由gpu更新或渲染的分格或图块的部分,即,有条件的解除解析过程。此外,在渲染显示内容或更新所渲染的显示内容的信息之后,本公开的各方面可以解析分格或图块的必要部分,即,有条件的解析过程。通过有条件地解除解析和解析图块的渲染部分的信息,本公开的各方面可将gpu带宽和功率用于图块的渲染或更新的部分。此外,本公开的各方面可以识别图块的渲染区域,使得该特定渲染区域的数据在系统存储器和gmem之间传输,反之亦然。66.本公开还可以利用图块的先前渲染部分,使得与图块的这些先前渲染部分相对应的数据从系统存储器到gmem来回传输,反之亦然。此外,根据本公开的gpu可以确定图块或数据的要渲染的部分,然后在gpu存储器中的系统存储器之间来回传输该信息。通过这样做,本公开可以对于每个分格或图块不传输所有数据或存储器,从而节省gpu性能和消耗的功率。67.在一些方面,本公开可以在渲染或更新该区域的同时确定图块的渲染区域的位置。通过确定渲染区域的位置,可以将该区域的数据从系统存储器移动到gmem,然后可以更新该特定区域的数据。因此,本公开可以确定或识别正在被渲染的图块的区域,使得与渲染区域相对应的数据可以基于渲染区域的这种确定而被传输。因此,本公开可以处理分格或图块的部分,然后一旦图块的渲染区域被确定,在解除解析过程期间,图块的该部分的数据可以从系统存储器传输到gmem。在更新或渲染图块的该区域之后,在解析过程期间,图块的该部分的数据可以从gmem传输到系统存储器。68.在一些方面,本公开可以基于传输到帧缓冲器和从帧缓冲器传输的数据或信息来确定将何时更新帧缓冲器。例如,应用可以确定何时将更新帧缓冲器,并通知gpu驱动程序何时向/从帧缓冲器传输数据。此外,gpu驱动程序可以通知gpu何时将数据从系统存储器解除解析到gpu存储器,以及何时将数据从gpu存储器解析到系统存储器。在一些方面,gpu驱动程序还可以将应用命令翻译成gpu命令。69.在一些情况下,可以逐图块地执行解除解析/解析操作,使得驱动程序可以通知gpu渲染过程将继续,并且帧缓冲器将继续更新。因此,gpu可以传输用于特定图块的数据,在绘制调用期间更新帧缓冲器,然后将数据从gmem传输到系统存储器。70.如本文所指示的,本公开的各方面可以按需并且在必要时对图块的部分的数据进行解除解析。本公开可以确定更新的位置,并且在绘制调用期间,gpu可以用图块的渲染区域的数据来更新帧缓冲器。在一些方面,本公开可以在对该区域执行任何其他功能之前生成图块区域的位置(例如帧中的x-y坐标数据)。例如,本文的gpu可以确定更新区域的x-y坐标数据,然后在该更新区域上执行着色和/或更新x-y坐标数据的颜色。因此,一旦知道了位置,就可以将帧缓冲器数据从系统储存器传输到gmem,然后就可以更新该区域的数据。在渲染之后,可以更新该区域的数据,并且本公开可以传输该区域的更新数据。因此,本公开可以移动图块的渲染区域的更新数据,而不是移动图块的整个数据。如本文所指示的,该过程可以被称为按需更新。71.本公开的各方面可以为前述的有条件的解除解析/解析过程执行多个步骤。举例来说,本文中的gpu可以确定图块的将被渲染的区域的数据,并将其从系统存储器传输到gmem,即,gpu可以解除解析图块区域的数据。然后,gpu可以渲染与传输到gmem的数据相对应的图块的区域。例如,gpu可以在图块中渲染新对象。渲染后,可以更新渲染区域的数据。然后,可以将渲染区域的更新数据存储和/或复制到gmem。然后,渲染区域的更新数据可以从gmem传输到系统存储器。最后,可以将渲染区域的数据存储和/或复制到系统存储器。72.如上所述,本公开的各方面可以确定图块的要渲染的部分。该图块区域的数据可以从系统存储器传输或通信到gmem。在某些方面,这种数据传输可以与渲染同时发生。然后,本公开可以渲染图块的该区域和/或更新该渲染区域的数据。数据更新可以递增执行。然后,该渲染区域的数据可以在被传输或通信到系统存储器之前,在gmem处被存储或复制。然后,该渲染区域的数据可以在系统存储器或dram处被存储或复制。在一些方面,该渲染区域的数据也可以被存储或复制在帧缓冲器中。73.图5示出了根据本公开的一种或多种技术的包括系统存储器和gmem的示例图500。如图5所示,图500包括系统存储器510、系统存储器520、系统存储器530、系统存储器540、gmem 512、gmem 522、gmem 532、gmem 542,区域516、显示内容528、解除解析过程514、渲染524、解析过程534。510/520/530/540处的系统存储器可以表示在解除解析/解析过程的不同时间期间gpu或cpu处的系统存储器。gmem 512/522/532/534可以表示在解除解析/解析过程的不同时间期间gpu处的gmem。74.如图5所示,区域516是图块的要渲染的部分,这可以基于显示内容来确定。区域516可以包括少于图块的整个区域。在解除解析过程514期间,区域516的数据或信息可以从系统存储器510移动或通信到gmem 512。在渲染524期间,区域516的显示内容528(例如太阳)可以被渲染。在渲染之后,区域516的显示内容528的数据或信息可以基于渲染来更新。区域516的显示内容528的数据或信息可以被写入、复制或存储到gmem 532。在区域516的显示内容528的数据或信息已经被复制和/或存储在gmem 532处之后,在解析过程534期间,区域516的显示内容528的数据或信息可以从gmem 532移动到系统存储器530。区域516的显示内容528的数据或信息然后可以被复制或存储到系统存储器540。如图5所示,区域516的显示内容528的数据或信息可以被存储在gmem 542和系统存储器540处。75.图5显示在一些方面,图块的区域(例如太阳)可以被渲染或更新,并且该图块区域的数据可以从系统存储器传输到gmem并传输回来。通过传输所渲染的图块区域的数据,本公开可节省大量的gpu功率和/或存储器带宽。当渲染图块的某一部分时,不需要传输图块的整个区域的数据。这也可以应用于某些渲染操作,例如,当渲染颜色和深度存储器时。在一些方面,分格或图块的数据或信息的大量部分在渲染后可能不被更新或渲染。如图5所示,区域516中的太阳在524处正被渲染,并且图块的其他部分可能不需要被渲染,使得与图块的这些其他部分相对应的数据可能不需要被通信或传输。76.图5显示图块的被渲染的区域516的显示内容(例如太阳)被渲染,并且图块的特定区域516的数据(例如与太阳相对应的数据)被从系统存储器到gmem来回传输。如上所述,通过传输与图块的渲染区域(例如,区域516)相对应的数据,这可以节省大量gpu功率和/或存储器带宽。在渲染区域516的显示内容之后,本公开可以更新与区域516相对应的数据,该数据将从gmem传输回系统存储器。在一些方面,在区域516处渲染显示内容可以和将区域516的数据从系统存储器传输到gmem同时发生。77.图5示出了用于在解除解析和解析过程期间通信图块信息的上述过程的示例。如图5所示,本公开的各方面(例如本文中的cpu和gpu)可以执行多个不同的步骤或过程,以在解除解析和解析过程中通信图块的部分的数据或信息。例如,本文中的gpu可以确定显示区域(例如区域516或中间渲染目标缓冲器)的部分,其中显示区域的该部分可以基于显示区域或中间渲染目标缓冲器的显示内容来确定。在一些方面,显示区域(例如区域516)的该部分可以由cpu或gpu确定。本文中的gpu还可以基于显示区域(例如区域516)或中间渲染目标缓冲器的显示内容来识别该显示区域的确定部分。78.另外,本文中的gpu可以确定与显示区域(例如,区域516)或中间渲染目标缓冲器的确定部分相对应的显示信息。本文中的gpu还可以将与显示区域(例如区域516)的确定部分相对应的显示信息从系统存储器(例如系统存储器510)复制到gmem(例如gmem 532)。本文中的gpu也可以(例如在解除解析过程514期间)通信与显示区域(例如,区域516)或中间渲染目标缓冲器的确定部分相对应的显示信息。在一些方面,本文中的gpu可以(例如在解除解析514期间)向gmem(例如,gmem 512)发送与显示区域(例如,区域516)的确定部分相对应的显示信息。79.本文中的gpu还可以(例如在渲染524处)渲染与显示区域(例如,区域516)或中间渲染目标缓冲器的确定部分相对应的显示区域的至少一些显示内容(例如,显示内容528)。本文中的gpu也可以更新与显示区域(例如,区域516)或中间渲染目标缓冲器的确定部分相对应的显示信息。在一些方面中,与显示区域(例如,区域516)的确定部分相对应的更新显示信息可基于(例如,在渲染524处)显示区域的渲染的至少一些显示内容(例如,显示内容528)。在一些方面中,与显示区域(例如,区域516)的确定部分相对应的更新显示信息可以被递增地更新,使得更新显示信息的至少一些信息与更新显示信息的至少一些其它信息分开更新。80.此外,本文中的gpu可以将与显示区域的确定部分相对应的更新显示信息(例如与区域516的显示内容528相对应的信息)复制到gmem(例如gmem 532)。本文中的gpu还可以将与显示区域的确定部分相对应的更新显示信息(例如,与区域516的显示内容528相对应的信息)存储在gmem(例如,gmem 532)中。81.本文中的gpu还可以(例如在解析过程534期间)通信与显示区域的确定部分相对应的更新显示信息(例如,与区域516的显示内容528相对应的信息)。在一些方面,本文中的gpu可以(例如在解析过程534期间)向系统存储器或dram(例如系统存储器530)发送与显示区域的确定部分相对应的更新显示信息(例如与区域516的显示内容528相对应的信息)。此外,本文中的gpu可以将与显示区域的确定部分相对应的更新显示信息(例如对应于区域516的显示内容528的信息)复制到系统存储器或dram(例如系统存储器540)。本文中的gpu还可以将与显示区域的确定部分相对应的更新显示信息(例如,与区域516的显示内容528相对应的信息)存储在系统存储器或dram(例如系统存储器540)中。82.在一些方面,gpu的光栅化器可以通知解析引擎将渲染图块的哪些区域。另外,在一些方面,解析引擎可以将这些渲染区域的颜色和/或深度信息从系统存储器加载到gmem或gpu内部存储器。此外,渲染后端可以例如基于渲染来记录更新了图块的哪些区域。此外,解析引擎可以将更新区域的颜色和深度从gpu内部存储器或gmem移动到系统存储器。83.本公开的上述方面可以包括许多优点。例如,本文的有条件的解除解析和解析机制可以减少gpu存储器工作负载,提高gpu性能和/或减少功耗。此外,由于本公开的各方面可以不传输整个图块的数据,因此可以减少与渲染区域相对应的传输数据量。例如,由于本公开可以不传输整个图块的数据,因此本公开的各方面可以改进gpu性能和/或降低功耗。84.图6示出了根据本公开的一种或多种技术的示例方法的示例流程图600。该方法可以由诸如cpu、gpu或用于图形处理的装置之类的装置来执行。在602,该装置可以确定显示区域或中间渲染目标缓冲器的部分,其中可以基于显示区域或中间渲染目标缓冲器的显示内容来确定显示区域的该部分,如结合图3、4和5中的示例所描述的。在一些方面,显示区域的该部分可以由中央处理单元(cpu)或图形处理单元(gpu)来确定,如结合图3、4和5中的示例所描述的。在604,该装置可以基于显示区域或中间渲染目标缓冲器的显示内容来识别显示区域的确定部分,如结合图3、4和5中的示例所描述的。85.在606,该装置可以确定与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息,如结合图3、4和5中的示例所描述的。在608,该装置可以将与显示区域的确定部分相对应的显示信息从系统存储器复制到gmem,如结合图3、4和5中的示例所描述的。在610,该装置可以通信与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息,如结合图3、4和5中的示例所描述的。在一些方面,该装置可以向gpu内部存储器(gmem)发送与显示区域的确定部分相对应的显示信息,如结合图3、4和5中的示例所描述的。86.在612,该装置可以渲染与显示区域或中间渲染目标缓冲器的确定部分相对应的显示区域的至少一些显示内容,如结合图3、4和5中的示例所描述的。在614,该装置可以更新与显示区域的确定部分相对应的显示信息,如结合图3、4和5中的示例所描述的。在一些方面,与显示区域的确定部分相对应的更新显示信息可以基于显示区域的渲染的至少一些显示内容,如结合图3、4和5中的示例所描述的。在一些方面中,与显示区域的确定部分相对应的更新显示信息可以被递增地更新,使得更新显示信息的至少一些信息与更新显示信息的至少一些其它信息分开更新,如结合图3、4和5中的示例所描述的。87.在616,该装置可以将与显示区域的确定部分相对应的更新显示信息复制到gmem,如结合图3、4和5中的示例所描述的。在618,该装置可以将与显示区域的确定部分相对应的更新显示信息存储在gmem中,如结合图3、4和5中的示例所描述的。88.在620,该装置可以通信与显示区域或中间渲染目标缓冲器的确定部分相对应的更新显示信息,如结合图3、4和5中的示例所描述的。在一些方面,该装置可以向系统存储器或动态随机存取存储器(dram)发送与显示区域的确定部分相对应的更新显示信息,如结合图3、4和5中的示例所描述的。在622,该装置可以将与显示区域的确定部分相对应的更新显示信息复制到系统存储器或dram,如结合图3、4和5中的示例所描述的。在624,该装置还可以将与显示区域的确定部分相对应的更新显示信息存储在系统存储器或dram中,如结合图3、4和5中的示例所描述的。89.在一种配置中,提供了一种用于图形处理的方法或装置。该装置可以是cpu、gpu或能够执行图形处理的一些其他处理器。在一个方面,该装置可以是设备104内的处理单元120,或者可以是设备104或另一设备内的一些其他硬件。该装置可以包括用于确定显示区域或中间渲染目标缓冲器的部分的部件,其中显示区域的该部分可以基于显示区域或中间渲染目标缓冲器的显示内容来确定。该装置可以包括用于通信与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息的部件。另外,该装置可以包括用于更新与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息的部件。该装置还可以包括用于通信与显示区域或中间渲染目标缓冲器的确定部分相对应的更新显示信息的部件。该装置还可以包括用于渲染与显示区域或中间渲染目标缓冲器的确定部分相对应的显示区域的至少一些显示内容的部件。该装置还可以包括用于确定与显示区域或中间渲染目标缓冲器的确定部分相对应的显示信息的部件。该装置还可以包括用于将与显示区域的确定部分相对应的显示信息从系统存储器复制到gmem的部件。该装置还可以包括用于将与显示区域或中间渲染目标缓冲器的确定部分相对应的更新显示信息存储在gmem中的部件。该装置还可以包括用于将与显示区域或中间渲染目标缓冲器的确定部分相对应的更新显示信息复制到gmem的部件。该装置还可以包括用于将与显示区域的确定部分相对应的更新显示信息存储在系统存储器或动态随机存取存储器(dram)中的部件。该装置还可以包括用于将与显示区域的确定部分相对应的更新显示信息复制到系统存储器或dram的部件。该装置还可以包括用于基于显示区域的显示内容来识别显示区域的确定部分的部件。90.本文描述的主题可以被实施以实现一个或多个益处或优点。例如,所描述的图形处理技术可以由gpu、cpu或能够执行图形处理的一些其他处理器来使用,以实现本文描述的解析和解除解析技术。与其他图形处理技术相比,这也可以低成本完成。此外,本文的图形处理技术可以改进或加速数据处理或执行。此外,本文的图形处理技术可以提高资源或数据利用率和/或资源效率。此外,本公开的各方面可以利用有条件的信息传输,该有条件的信息传输可以减少在解析和解除解析过程期间消耗的时间和金钱。91.根据本公开,术语“或”可以中断为“和/或”,除非上下文另有指示。此外,虽然诸如“一个或多个”或“至少一个”等短语可能已经用于本文公开的一些特征而不是其它特征,但是没有使用这种语言的特征可以被解释为具有暗示的这种含义,除非上下文另有指示。92.在一个或多个示例中,本文所描述的功能可以在硬件、软件、固件或其任意组合中实施。例如,尽管术语“处理单元”已经在本公开中使用,但是这种处理单元可以用硬件、软件、固件或其任意组合来实现。如果本文描述的任何功能、处理单元、技术或其他模块以软件实现,则本文描述的功能、处理单元、技术或其他模块可以作为一个或多个指令或代码存储在计算机可读介质上或通过其发送。计算机可读介质可以包括计算机数据存储介质或通信介质,通信介质包括促进将计算机程序从一个地方通信到另一地方的任何介质。以这种方式,计算机可读介质通常可以对应于(1)非暂时性的有形计算机可读存储介质,或者(2)诸如信号或载波的通信介质。数据存储介质可以是可由一个或多个计算机或一个或多个处理器访问以检索指令、代码和/或数据结构来实施本公开中描述的技术的任何可用介质。作为示例而非限制,这种计算机可读介质可以包括ram、rom、eeprom、cd-rom或其他光盘存储器、磁盘存储器或其他磁存储设备。本文使用的光盘和磁盘包括压缩光盘(cd)、激光盘、光学光盘、数字多功能盘(dvd)、软磁盘和蓝光光盘,其中磁盘通常磁性地再现数据,而光盘用激光光学地再现数据。以上的组合也应该包括在计算机可读介质的范围内。计算机程序产品可以包括计算机可读介质。93.代码可以由一个或多个处理器执行,诸如一个或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、算术逻辑单元(alu)、现场可编程逻辑阵列(fpga)或其他等效的集成或离散的逻辑电路系统。因此,本文使用的术语“处理器”可以指任何前述结构或者适合于实施本文描述的技术的任何其他结构。同样,这些技术可以完全在一个或多个电路或逻辑元件中实施。94.本公开的技术可以在多种设备或装置中实施,包括无线手机、集成电路(ic)或ic的集合,例如芯片集。在本公开中描述了各种组件、模块或单元,以强调被配置为执行所公开的技术的设备的功能方面,但是不一定需要通过不同的硬件单元来实现。相反,如上所述,各种单元可以组合在任何硬件单元中,或者由包括如上所述的一个或多个处理器的一批互操作硬件单元,结合合适的软件和/或固件来提供。95.已经描述了各种示例。这些和其他示例在所附权利要求的范围内。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部