使用动态宽度计算的壁垒同步的制作方法_5

文档序号:9693211阅读:来源:国知局
组中的线程的总 数;及 响应于所述线程群组的子群组中的每一线程已执行相应的壁皇操作,所述子群组包含 与所述所确定的壁皇宽度相同数目的线程,使得所述线程群组的所述子群组能够在所述相 应的壁皇操作之后在所述一或多个计算单元上执行相应的操作而无需等待所述线程群组 中的其它线程执行壁皇操作,其中所述线程群组的所述子群组小于所述线程群组中的线程 的所述总数。2. 根据权利要求1所述的方法,其中所述确定包括: 至少部分基于所述数据并行代码而确定所述壁皇操作的所述壁皇宽度。3. 根据权利要求1所述的方法,其中所述壁皇操作的所述壁皇宽度大于所述一或多个 计算单元的波前的向量宽度。4. 根据权利要求1所述的方法,其进一步包括: 在所述壁皇操作的所述壁皇宽度小于所述一或多个计算单元的波前的向量宽度的情 况下确定不执行所述壁皇操作。5. 根据权利要求1所述的方法,其中所述壁皇操作包含在条件语句中,且其中所述条件 语句不贯穿所述线程群组进行统一地评估。6. 根据权利要求1所述的方法,其中所述线程群组的所述子群组中的线程是所述线程 群组中的连续线程。7. 根据权利要求1所述的方法,其中所述壁皇操作包含在循环中。8. 根据权利要求7所述的方法,其进一步包括: 为所述循环的每一迭代动态地确定所述壁皇操作的所述壁皇宽度,其中所述所确定的 壁皇宽度在所述循环的至少两个迭代中是不同的。9. 一种用于使线程同步的计算系统,其包括: 主机; 处理单元,其可操作地耦合到所述主机; 定序器模块,其经配置以: 在所述主机上执行的包含将由所述处理单元执行的数据并行代码的应用的运行时间 确定各自在所述处理单元的一或多个计算单元上执行所述数据并行代码的群组线程的壁 皇操作的壁皇宽度,其中所述壁皇宽度小于所述线程群组中的线程的总数,及 响应于所述线程群组的子群组中的每一线程已执行相应的壁皇操作,所述子群组包含 与所述所确定的壁皇宽度相同数目的线程,使得所述线程群组的所述子群组能够在所述相 应的壁皇操作之后在所述一或多个计算单元上执行相应的操作而无需等待所述线程群组 中的其它线程执行壁皇操作,其中所述线程群组的所述子群组小于所述线程群组中的线程 的所述总数。10. 根据权利要求9所述的计算系统,其中确定所述壁皇宽度包括: 至少部分基于所述数据并行代码而确定所述壁皇操作的所述壁皇宽度。11. 根据权利要求9所述的计算系统,其中所述壁皇操作的所述壁皇宽度大于所述一或 多个计算单元的波前的向量宽度。12. 根据权利要求9所述的计算系统,其中所述定序器模块进一步经配置以: 在所述壁皇操作的所述壁皇宽度小于所述一或多个计算单元的波前的向量宽度的情 况下确定不执行所述壁皇操作。13. 根据权利要求9所述的计算系统,其中所述壁皇操作包含在条件语句中,且其中所 述条件语句不贯穿所述线程群组进行统一地评估。14. 根据权利要求9所述的计算系统,其中所述线程群组的所述子群组中的线程是所述 线程群组中的连续线程。15. 根据权利要求9所述的计算系统,其中所述壁皇操作包含在循环中。16. 根据权利要求15所述的计算系统,其中所述定序器模块进一步经配置以: 为所述循环的每一迭代动态地确定所述壁皇操作的所述壁皇宽度,其中所述所确定的 壁皇宽度在所述循环的至少两个迭代中是不同的。17. -种并行处理设备,其包括: 用于以下操作的装置:在主机上执行的包含将由可操作地耦合到所述主机的处理单元 执行的数据并行代码的应用的运行时间确定各自在所述处理单元的一或多个计算单元上 执行所述数据并行代码的群组线程的壁皇操作的壁皇宽度,其中所述壁皇宽度小于所述线 程群组中的线程的总数;及 响应于所述线程群组的子群组中的每一线程已执行相应的壁皇操作,所述子群组包含 与所述所确定的壁皇宽度相同数目的线程,用于以下操作的装置:使得所述线程群组的所 述子群组能够在所述相应的壁皇操作之后在所述一或多个计算单元上执行相应的操作而 无需等待所述线程群组中的其它线程执行壁皇操作,其中所述线程群组的所述子群组小于 所述线程群组中的线程的所述总数。18. 根据权利要求17所述的并行处理设备,其中所述用于确定的装置包括: 用于至少部分基于所述数据并行代码而确定所述壁皇操作的所述壁皇宽度的装置。19. 根据权利要求17所述的并行处理设备,其中所述壁皇操作的所述壁皇宽度大于所 述一或多个计算单元的波前的向量宽度。20. 根据权利要求17所述的并行处理设备,其进一步包括: 用于在所述壁皇操作的所述壁皇宽度小于所述一或多个计算单元的波前的向量宽度 的情况下确定不执行所述壁皇操作的装置。21. 根据权利要求17所述的并行处理设备,其中所述壁皇操作包含在条件语句中,且 其中所述条件语句不贯穿所述线程群组进行统一地评估。22. 根据权利要求17所述的并行处理设备,其中所述线程群组的所述子群组中的线程 是所述线程群组中的连续线程。23. 根据权利要求17所述的并行处理设备,其中所述壁皇操作包含在循环中。24. 根据权利要求23所述的并行处理设备,其进一步包括: 用于为所述循环的每一迭代动态地确定所述壁皇操作的所述壁皇宽度的装置,其中所 述所确定的壁皇宽度在所述循环的至少两个迭代中是不同的。25. -种计算机可读存储媒体,其含有指令,所述指令在由所述至少一个处理器执行时 致使所述至少一个处理器执行包括以下操作的操作: 在主机上执行的包含将由可操作地耦合到所述主机的处理单元执行的数据并行代码 的应用的运行时间确定各自执行所述数据并行代码的群组线程的壁皇操作的壁皇宽度,其 中所述壁皇宽度小于所述线程群组中的线程的总数;及 响应于所述线程群组的子群组中的每一线程已执行相应的壁皇操作,所述子群组包含 与所述所确定的壁皇宽度相同数目的线程,使得所述线程群组的所述子群组能够在所述相 应的壁皇操作之后在所述一或多个计算单元上执行相应的操作而无需等待所述线程群组 中的其它线程执行壁皇操作,其中所述线程群组的所述子群组小于所述线程群组中的线程 的所述总数。26. 根据权利要求25所述的计算机可读存储媒体,其中所述确定包括: 至少部分基于所述数据并行代码而确定所述壁皇操作的所述壁皇宽度。27. 根据权利要求25所述的计算机可读存储媒体,其中所述壁皇操作的所述壁皇宽度 大于所述一或多个计算单元的波前的向量宽度。28. 根据权利要求25所述的计算机可读存储媒体,其进一步包括: 在所述壁皇操作的所述壁皇宽度小于所述一或多个计算单元的波前的情况下确定不 执行所述壁皇操作。29. 根据权利要求25所述的计算机可读存储媒体,其中所述壁皇操作包含在条件语句 中,且其中所述条件语句不贯穿所述线程群组进行统一地评估。30. 根据权利要求25所述的计算机可读存储媒体,其中所述线程群组的所述子群组中 的线程是所述线程群组中的连续线程。31. 根据权利要求25所述的计算机可读存储媒体,其中所述壁皇操作包含在循环中。32. 根据权利要求31所述的计算机可读存储媒体,其进一步包括: 为所述循环的每一迭代动态地确定所述壁皇操作的所述壁皇宽度,其中所述所确定的 壁皇宽度在所述循环的至少两个迭代中是不同的。
【专利摘要】处理单元的定序器在运行时间确定群组线程的壁垒操作的壁垒宽度,其中所述壁垒宽度小于所述线程群组中的线程的总数,且其中所述线程群组中的线程在一或多个计算单元上执行数据并行代码。响应于所述线程群组的子群组中的每一线程已执行所述壁垒操作,所述子群组包含与所述壁垒宽度相同数目的线程,所述定序器可使得所述线程群组的所述子群组能够在所述壁垒操作之后在一或多个处理器上执行,而无需等待所述线程群组中的其它线程执行所述壁垒操作,其中所述线程群组的所述子群组小于所述线程群组中的线程的所述总数。
【IPC分类】G06F9/52
【公开号】CN105453045
【申请号】CN201480043435
【发明人】贝内迪克特·鲁宾·加斯特
【申请人】高通股份有限公司
【公开日】2016年3月30日
【申请日】2014年8月7日
【公告号】CA2917609A1, EP3033679A1, US9218223, US20150052537, WO2015023509A1
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1