[发明专利]一种众核处理器结构上避免无关依赖的线程划分方法有效
申请号: | 201410007139.9 | 申请日: | 2014-01-07 |
公开(公告)号: | CN103699365A | 公开(公告)日: | 2014-04-02 |
发明(设计)人: | 王耀彬;刘志勤;陈菲;彭莉娟;李凌;赵旭剑 | 申请(专利权)人: | 西南科技大学 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 北京众合诚成知识产权代理有限公司 11246 | 代理人: | 龚燮英 |
地址: | 621010 四川省绵*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 处理器 结构 避免 无关 依赖 线程 划分 方法 | ||
1.一种众核处理器结构上避免无关依赖的线程划分方法,其特征在于,所述的众核处理器结构上避免无关依赖的线程划分方法包括如下步骤:
步骤一、程序剖析,确定具有并行潜力的循环结构;
步骤二、确定该循环迭代体的控制流图;
步骤三、确定该循环迭代体的数据流图;
步骤四、确定派生推测线程的数目;
步骤五、通过依赖分离,进行线程划分;
步骤六、进行线程封装。
2.如权利要求1所述的众核处理器结构上避免无关依赖的线程划分方法,其特征在于,所述的步骤一通过程序剖析技术选择出占据程序运行时间较多的一个或者多个循环结构,将其迭代体作为进一步划分的备选。
3.如权利要求1所述的众核处理器结构上避免无关依赖的线程划分方法,其特征在于,所述的步骤二确定并保存备选迭代体内指令间的控制流方向。
4.如权利要求1所述的众核处理器结构上避免无关依赖的线程划分方法,其特征在于,所述的步骤三确定并保存备选迭代体内指令间的数据依赖关系。
5.如权利要求1所述的众核处理器结构上避免无关依赖的线程划分方法,其特征在于,所述的步骤四分析数据流走向,确定需要派生的推测线程数N。
6.如权利要求1所述的众核处理器结构上避免无关依赖的线程划分方法,其特征在于,步骤五所述的通过依赖分离,进行线程划分的具体步骤如下:
步骤一、依据数据流图中的依赖关系走向,通过反复划分节点到N个超级节点来进行N路图分割,进行初步的N个推测线程划分;
步骤二、遍历通过依赖分离进行线程划分的步骤一中初步创建的N个超级节点,通过复制共用指令,完成最终的N个“自给自足”的推测线程划分。
7.如权利要求1所述的众核处理器结构上避免无关依赖的线程划分方法,其特征在于,步骤六所述的进行线程封装的具体步骤如下:
步骤一、在每个推测线程的头部插入状态检查点即CKP指令,用以保持当前状态,支持推测执行后的回退操作;
步骤二、在CKP指令之后插入线程派生指令,用以在执行时派生推测线程;
步骤三、在每个推测线程的尾部插入同步指令,用以支持推测执行的提交操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西南科技大学,未经西南科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410007139.9/1.html,转载请声明来源钻瓜专利网。