[发明专利]并行管道中的发散分支的硬件和软件解决方案有效
申请号: | 201480017686.3 | 申请日: | 2014-01-28 |
公开(公告)号: | CN105074657B | 公开(公告)日: | 2018-11-30 |
发明(设计)人: | 雷扎·亚兹达尼 | 申请(专利权)人: | 超威半导体公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 上海胜康律师事务所 31263 | 代理人: | 樊英如;李献忠 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种用于在处理器内部的硬件并行执行道上有效地处理指令的系统和方法。响应于已识别的循环内部的给定发散点,编译器将所述已识别的循环内部的指令布置到超长指令字(VLIW)中。至少一个VLIW包括由所述给定发散点和对应汇聚点之间的不同基本块混合的指令。所述编译器生成代码,其中当被执行时,所述代码在运行时将给定的VLIW内部的指令分配给目标处理器内部的多个并行执行道。所述目标处理器包括单指令多数据(SIMD)微型体系结构。对给定的道的分配是基于运行时在所述给定分散点处针对所述给定的道发现的分支方向。所述目标处理器包括用于存储指示的矢量寄存器,所述指示指示了已提取的VLIW内部的哪个给定指令用于相关联的道来执行。 | ||
搜索关键词: | 并行 管道 中的 发散 分支 硬件 软件 解决方案 | ||
【主权项】:
1.一种非暂时性计算机可读存储介质,其存储被配置用于由计算机系统的至少一个处理器执行的至少一个程序,其中所述至少一个程序包括可由处理器执行来进行以下操作的指令:识别多个程序指令内部的循环和对应的基本块;并且响应于检测多个程序指令的已识别的循环内部的给定发散点,将所述已识别的循环内部的多个指令布置到多个可变长度超长指令字中,其中所述已识别的循环内部的所述给定发散点可包括分支指令,其中至少一个可变长度超长指令字包括由所述给定发散点和对应汇聚点之间的不同基本块混合的多个指令;以及将进行如下操作的程序代码添加到所述多个程序指令中:更新大小寄存器,以指示针对可变长度超长指令字要提取的指令的数量;以及更新矢量寄存器,以存储可变长度超长指令字的指令与目标处理器内的多个并行执行道之间的映射。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于超威半导体公司,未经超威半导体公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201480017686.3/,转载请声明来源钻瓜专利网。
- 上一篇:三相电动机、密闭型压缩机以及制冷循环装置
- 下一篇:一种升降式止回阀