[发明专利]线程机制的条件结束有效
申请号: | 201410160221.5 | 申请日: | 2014-03-14 |
公开(公告)号: | CN104050627B | 公开(公告)日: | 2017-07-21 |
发明(设计)人: | P·奥索夫斯基 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06T1/20 | 分类号: | G06T1/20 |
代理公司: | 永新专利商标代理有限公司72002 | 代理人: | 王英,张立达 |
地址: | 美国加*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 线程 机制 条件 结束 | ||
1.一种图形处理单元,包括:
至少一个执行单元,所述执行单元配置为执行着色器,所述着色器包括指令,所述指令用于使所述执行单元执行下列动作:
并行处理多个像素数据,直到所述多个像素数据中的每一个被丢弃以及最后写入指令的执行;并且
在所述多个像素数据中的每一个被丢弃以及所述最后写入指令的执行之后,执行线程指令的条件结束,其中,所述线程指令的条件结束的执行用于终止线程,其中,在每一个线程指令的条件结束之前引入验证码,其中,所述验证码用于验证所述像素数据的状态,并且所述像素数据的状态被验证,以使得如果在所述线程指令的条件结束之后没有丢弃所述线程的所有像素数据并且所述线程将任意像素数据写入到另一缓冲器,则所述线程指令的条件结束将不执行。
2.根据权利要求1所述的图形处理单元,其中,所述指令包括丢弃指令,并且其中,一个丢弃指令的执行导致所述多个像素数据的丢弃。
3.根据权利要求1所述的图形处理单元,其中,所述指令包括多个丢弃指令,并且其中,所述多个丢弃指令的执行导致所述多个像素数据的丢弃,其中,每一个丢弃指令的执行用于丢弃所述多个像素数据的一部分。
4.根据权利要求3所述的图形处理单元,其中,所述执行单元用于在所述多个像素数据中的每一个被丢弃之后并且在所述最后写入指令的执行之后验证所丢弃的像素数据的状态。
5.根据权利要求1所述的图形处理单元,其中,所述执行单元不使所丢弃的像素数据写入到DirectX中的Render Target缓冲器或者OpenGL中的Color Attachment缓冲器。
6.根据权利要求1所述的图形处理单元,其中,所述最后写入指令包括所述多个像素数据的其它写入,并且所述其它写入使所述执行单元写入到除了DirectX中的Render Target缓冲器或者OpenGL中的Color Attachment缓冲器之外的任何缓冲器。
7.根据权利要求1所述的图形处理单元,其中,在所述线程指令的条件结束之后,当所有像素数据被丢弃时并且在所述最后写入指令的执行之后,所述线程指令的条件结束的执行用于防止通过所述执行单元的所述线程的所有进一步计算的执行。
8.根据权利要求1所述的图形处理单元,其中,在所述多个像素数据中的每一个被丢弃之后并且在不执行所述多个像素数据的其它写入之后,通过所述线程的终止来增强所述图形处理单元的性能并且节约功率。
9.一种用于线程机制的条件结束的方法,包括:
编译着色器,其中,编译所述着色器包括在每一个丢弃指令和最后写入指令之后将线程指令的条件结束引入到所述着色器中,其中,编译所述着色器包括在每一个线程指令的条件结束之前引入验证码,其中,所述验证码用于验证像素数据的状态;
执行所编译的着色器,其中,如果在所述线程指令的条件结束之后线程的所有像素数据被丢弃并且所述线程不将任意像素数据写入到另一缓冲器,则通过所述线程指令的条件结束来终止所述线程,其中,执行所编译的着色器包括验证所述像素数据的状态,以使得如果在所述线程指令的条件结束之后没有丢弃所述线程的所有像素数据并且所述线程将任意像素数据写入到另一缓冲器,则所述线程指令的条件结束将不执行。
10.根据权利要求9所述的方法,其中,每一个丢弃指令用于指示没有数据将被写入到DirectX中的Render Target缓冲器或OpenGL中的Color Attachment缓冲器。
11.根据权利要求9所述的方法,其中,如果在所述线程指令的条件结束之后所述线程的所有像素数据被丢弃并且所述线程不将任意像素数据写入到另一缓冲器,则通过所述线程指令的条件结束的所述线程的终止用于省去所述线程的所有进一步计算的执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410160221.5/1.html,转载请声明来源钻瓜专利网。