[发明专利]着色器函数链接图表在审
申请号: | 201380077104.6 | 申请日: | 2013-09-20 |
公开(公告)号: | CN105493030A | 公开(公告)日: | 2016-04-13 |
发明(设计)人: | Y.多森科;C.G.里德尔;R.L.普罗特克;M.D.桑迪;A.J.格莱斯特 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 孙慧;景军平 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 着色 函数 链接 图表 | ||
背景技术
图形处理单元(GPU)用于高效地处理大量数据并行计算。照此,被称为着色器或内 核的专门化GPU程序必须良好地优化以高效地运用并行硬件。着色器可以用于确定包括阴 影在内的图形图像效果,诸如确定图像元素(诸如例如像素、顶点或几何形状)上的光、颜色 或纹理的适当等级。着色器还可以用于通用并行计算。通常通过较简单构成的计算的组合 来实施着色器的期望效果。一般地并且针对将构成部分组成到期望的专门化GPU程序中的 情况并且跨大范围的GPU而实现高性能是通过对着色器编写的传统方案未能解决的非常困 难的问题。
发明内容
提供本发明内容来以简化形式引入以下在具体实施方式中进一步描述的概念的 选择。本发明内容不意图标识所要求保护的主题的关键特征或必要特征,也不意图单独地 用作帮助确定所要求保护的主题的范围。
本发明的实施例一般地涉及着色器组装。在这方面,着色器函数可以在没有对特 定着色器模型的专门化或资源绑定(bind)的最终化的情况下编译。本发明的实施例通过在 将着色器呈现给GPU驱动器之前进行链接来促进最终着色器组装和资源绑定,而不要求对 GPU驱动器或硬件的修改。
附图说明
参照附图在下文详细地描述本发明的实施例,其中:
图1是适合用于实现本发明的实施例的示例性计算环境的框图;
图2是适合用于在实现本发明的实施例中使用的示例性计算系统架构的框图;
图3是示出了依照本发明的实施例的组装着色器的方法的流程图;
图4是示出了依照本发明的实施例的生成着色器函数链接图表的方法的流程图;
图5是示出了依照本发明的实施例的施行着色器链接的方法的流程图;
图6A-6C图示性地描绘了依照本发明的实施例的用于使用着色器链接创建着色器的示 例计算机程序;
图7A图示性地描绘了使用着色器语言的着色器的传统构造;以及
图7B图示性地描绘了依照本发明的实施例的使用函数链接图表(FLG)API的相同着色 器的构造。
具体实施方式
在本文中以特定性来描述本发明的实施例的主题以满足法定要求。然而,描述本 身不意图限制本专利的范围。而是,发明人已经设想到,所要求保护的主题还可能以其它方 式体现,以结合其它当前或未来的技术而包括与本文档中描述的那些类似的步骤的组合或 不同的步骤。而且,尽管术语“步骤”和/或“块”在本文中可以用于意味着所采用的方法的不 同要素,但是该术语不应当解释为暗示本文公开的各种步骤之间或之中的任何特定次序, 除非并且除了在明确描述各个步骤的次序时之外。
本发明的实施例一般涉及着色器组装和计算。着色器专门化是在计算机图形和图 形处理单元上的通用计算(GPGPU)中的实践以通过使着色器计算尽可能具体(concrete)地 超前(upfront)而发挥性能。典型地,开发者构造用于静态着色器专门化的框架,这产生数 百或数千个着色器变体,以表达离线地或者在运行时之前的某个其它时间处编译的期望计 算。影响性能的构造(诸如常量、控制流或循环展开因子)首先被参数化,并且由参数置换所 引起的大量着色器变体通常被静态地编译并且与最终产品封装。
存在与包括组合着色器激增(explosion)的该方案相关的若干问题:参数空间变 得如此之大,其快速地成为不可管理的。这造成巨大的着色器数据库和二进制大小,并且要 求开发期间的过多编译时间。着色器空间甚至可能变得如此之大使得产品在运行时处被迫 进入到编译着色器变体中。
另一方案是仅运行时编译,其解决着色器专门化的缺陷并且在其中计算未知直到 运行时或着色器专门化空间变得过大的情形中采用。但是仅运行时编译具有至少两个主要 缺点,包括(1)不可预测的存储器使用和大编译时间(甚至对于小的着色器而言),其使用户 体验降级,以及(2)缺乏知识产权保护,因为着色器源代码可以容易地从应用提取以对算法 进行反向工程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380077104.6/2.html,转载请声明来源钻瓜专利网。