【技术实现步骤摘要】
【国外来华专利技术】用于图形处理中的着色器程序执行技术
本专利技术涉及图形处理系统,且更确切地说,涉及在图形处理系统中执行着色器程序。
技术介绍
计算装置通常利用图形处理单元(GPU)以加速呈现用于显示的图形数据。此类计算装置可以包括例如计算机工作站、移动电话(例如,所谓的智能电话)、嵌入系统、个人计算机、平板计算机和视频游戏控制台。GPU通常执行图形处理管线,所述图形处理管线包括一起操作以执行图形处理命令的多个处理级。传统上,GPU包括固定功能图形处理管线,其中管道中的每个处理级是通过固定功能硬件(例如,作为硬连线以执行某一组专业化功能且无法执行用户可下载程序的硬件)实施的。近年来,图形处理管线已经转移到可编程架构,其中管线中的一或多个处理级是可编程处理级并且通过一或多个可编程着色器单元实施。可编程着色器单元中的每一个可经配置以执行着色器程序。用户应用程序可以在可编程图形管线中规定待通过可编程处理级执行的着色器程序,由此在现今的GPU的使用中提供更高程度的灵活性。随着图形处理技术的发展,图形处理管线变得更加精密并且不断增多的数目的不同类型的可编程处理级被添加到由主要图形应用程序编程接口(API)规定的标准图形处理管线。在GPU中通过有限的资源实施这些不同类型的可编程处理级可以带来相当大的挑战。
技术实现思路
本专利技术描述了用于在图形处理单元(GPU)中执行着色器程序的技术。着色器程序可以指加载到GPU上并且通过GPU执行的程序,其中一或多个着色器单元包括于GPU中。GPU可以执行着色器程序的多个实例,其中着色器程序的实例中的每一个相对于不同数据项执行相同程序指令。实例数据项可 ...
【技术保护点】
一种方法,其包括:通过图形处理器的着色器单元执行着色器程序,所述着色器程序执行顶点着色器处理并且针对由所述着色器程序接收的每个输入顶点产生多个输出顶点。
【技术特征摘要】
【国外来华专利技术】2014.08.22 US 14/466,5541.一种方法,其包括:通过图形处理器的着色器单元执行着色器程序,所述着色器程序执行顶点着色器处理并且针对由所述着色器程序接收的每个输入顶点产生多个输出顶点。2.根据权利要求1所述的方法,其中通过所述图形处理器的所述着色器单元执行所述着色器程序包括:通过所述着色器单元执行所述着色器程序的多个实例使得所述着色器程序的所述实例中的每一个接收多个输入顶点中的相应一个并且响应于接收到所述多个输入顶点中的所述相应一个产生多个输出顶点。3.根据权利要求1所述的方法,其中所述顶点着色器处理是通过顶点着色器程序规定的,并且其中所述着色器程序包括合并顶点/几何着色器程序,所述合并顶点/几何着色器程序是可配置的以执行通过所述顶点着色器程序规定的所述顶点着色器处理以及通过几何着色器程序规定的几何着色器处理。4.根据权利要求1所述的方法,其中所述着色器程序包括合并顶点/几何着色器程序,所述合并顶点/几何着色器程序是可配置的以执行顶点着色器处理和几何着色器处理,并且其中通过所述图形处理器的所述着色器单元执行所述着色器程序包括:通过所述着色器单元执行所述合并顶点/几何着色器程序的多个实例使得所述合并顶点/几何着色器程序的所述实例中的每一个产生M个输出顶点,其中M是大于或等于2的整数。5.根据权利要求4所述的方法,其中M等于通过由所述合并/顶点几何着色器程序实施的几何着色器程序规定的最大输出顶点计数值,所述最大输出顶点计数值指示针对由所述几何着色器程序处理的每个基元待由所述几何着色器程序产生的最大数目的输出顶点。6.根据权利要求4所述的方法,其中所述合并顶点/着色器程序的所述实例中的每一个是可配置的以相对于分配到所述合并顶点/着色器程序的所述相应的实例的基元执行所述几何着色器处理,并且其中多个基元中的每一个被分配到一个合并顶点/几何着色器实例以用于进行处理。7.根据权利要求6所述的方法,其中所述合并顶点/着色器程序的所述实例中的每一个是进一步可配置的以相对于分配到所述合并顶点/着色器程序的所述相应的实例的顶点执行所述顶点着色器处理,其中多个顶点中的每一个被分配到一个合并顶点/几何着色器实例以用于进行处理,并且其中所述合并顶点/几何着色器程序的所述实例中的至少一个经配置以相对于所述多个顶点中的一个执行所述顶点着色器处理并且相对于所述多个基元中的一个执行所述几何着色器处理。8.根据权利要求6所述的方法,其中所述合并顶点/着色器程序的所述实例中的每一个可以是进一步可配置的以相对于分配到所述合并顶点/着色器程序的所述相应的实例的顶点执行所述顶点着色器处理,并且其中通过所述着色器单元执行所述合并顶点/几何着色器程序的所述多个实例进一步包括:通过所述合并顶点/几何着色器程序的第一实例相对于多个顶点中的一个执行所述顶点着色器处理以产生顶点着色顶点;通过所述合并顶点/几何着色器程序的第二实例相对于所述多个基元中的第一基元基于由所述合并顶点/几何着色器程序的所述第一实例产生的所述顶点着色顶点执行所述几何着色器处理以产生对应于所述第一基元的一或多个几何着色顶点;并且通过所述合并顶点/几何着色器程序的第三实例相对于所述多个基元中的第二基元基于由所述合并顶点/几何着色器程序的所述第一实例产生的所述顶点着色顶点执行所述几何着色器处理以产生对应于所述第二基元的一或多个几何着色顶点。9.根据权利要求1所述的方法,其中所述图形处理器是可配置的以在第一着色器程序执行模式中操作并且是可配置的在不同于所述第一着色器程序执行模式的第二着色器程序执行模式中操作,其中所述着色器程序包括可配置以执行顶点着色器处理和几何着色器处理的合并顶点/几何着色器程序,其中通过所述图形处理器的所述着色器单元执行所述着色器程序包括通过所述着色器单元执行所述合并顶点/几何着色器程序的多个实例,其中所述合并顶点/着色器程序的所述实例中的每一个是可配置的以相对于分配到所述合并顶点/着色器程序的所述相应的实例的顶点执行顶点着色器处理并且相对于分配到所述合并顶点/着色器程序的所述相应的实例的基元执行几何着色器处理,其中当在所述第一着色器程序执行模式中操作时,多个基元中的每一个被分配到一个合并顶点/几何着色器实例以用于几何着色器处理并且所述合并顶点/几何着色器程序的所述实例中的每一个输出M个输出顶点,其中M是大于或等于2的整数,以及其中当在所述第二着色器程序执行模式中操作时,所述多个基元中的每一个被分配到N个合并顶点/几何着色器实例以用于几何着色器处理并且所述合并顶点/几何着色器程序的所述实例中的每一个输出一个输出顶点,其中N是大于或等于2的整数并且M小于或等于N。10.根据权利要求9所述的方法,其中M等于多少个顶点是针对通过由所述合并顶点/几何着色器程序实施的几何着色器级处理的基元中的每一个产生的,并且其中N等于通过由所述合并/顶点几何着色器程序实施的几何着色器程序规定的最大输出顶点计数值,所述最大输出顶点计数值指示针对由所述几何着色器程序处理的所述基元中的每一个待由所述几何着色器程序产生的最大数目的输出顶点。11.根据权利要求9所述的方法,其中当在所述第一着色器程序执行模式中操作时,多个顶点中的每一个被分配到一个合并顶点/几何着色器实例以用于进行处理,并且其中当在所述第二着色器程序执行模式中操作时,所述多个顶点中的每一个被分配到K个合并顶点/几何着色器实例以用于进行处理,其中K是等于多少个基元包括所述相应的顶点的整数。12.根据权利要求9所述的方法,其中所述方法进一步包括:选择第一着色器程序执行模式和所述第二着色器程序执行模式中的一个作为所选定的着色器程序执行模式以用于基于指示存储与通过所述合并顶点/几何着色器程序实施的几何着色器程序相关联的输出顶点所需要的存储空间的总量的信息执行所述合并顶点/几何着色器程序;并且使得所述着色器单元基于所述所选定的着色器程序执行模式执行所述合并顶点/几何着色器程序。13.根据权利要求12所述的方法,其中选择所述第一着色器程序执行模式和所述第二着色器程序执行模式中的所述一个包括:确定指示所述存储空间的总量是否大于阈值的信息;响应于确定指示所述存储空间的总量大于所述阈值的信息选择所述第二着色器程序执行模式作为所述所选定的着色器程序执行模式;并且响应于确定指示所述存储空间的总量并不大于所述阈值的所述信息选择所述第一着色器程序执行模式作为所述所选定的着色器程序执行模式。14.一种装置,其包括:图形处理单元GPU,其包括着色器单元,所述着色器单元经配置以执行着色器程序,所述着色器程序执行顶点着色器处理并且针对由所述着色器程序接收的每个输入顶点产生多个输出顶点。15.根据权利要...
【专利技术属性】
技术研发人员:维尼特·戈尔,金东炫,钟刚,
申请(专利权)人:高通股份有限公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。