[发明专利]针对具有多个功能单元的处理器调度循环的方法有效
| 申请号: | 201410678024.2 | 申请日: | 2014-11-21 |
| 公开(公告)号: | CN104657210B | 公开(公告)日: | 2020-02-28 |
| 发明(设计)人: | 李莲福;梁镐;朴永焕;凯沙瓦·普拉萨德 | 申请(专利权)人: | 三星电子株式会社 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48 |
| 代理公司: | 北京铭硕知识产权代理有限公司 11286 | 代理人: | 张云珠;韩明星 |
| 地址: | 韩国京畿*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 针对 具有 功能 单元 处理器 调度 循环 方法 | ||
1.一种循环调度方法,包括:
使用多个执行单元调度第一循环;
使用所述多个执行单元之中的在调度第一循环之后可用的剩余的执行单元来调度第二循环,
其中,第一循环的优先级高于第二循环的优先级,
其中,所述方法还包括:
响应于使用所述可用的剩余的执行单元未成功调度第二循环,展开对第一循环调度的结果;
使用通过展开对第一循环调度的结果而获得的结果来调度第二循环。
2.如权利要求1所述的方法,其中,调度第二循环的步骤包括:使用在第一循环被调度的周期中还未被分配给第一循环的执行单元来调度第二循环的至少一部分。
3.如权利要求1所述的方法,其中,调度第一循环的步骤包括:
从在源代码中包括的循环之中选择独立的多个循环;
确定所选择的多个循环的优先级。
4.如权利要求1所述的方法,其中,循环的优先级基于以下项中的至少一个被计算:循环的迭代计数和用于循环的单次迭代的周期数。
5.如权利要求1所述的方法,其中,调度第二循环的步骤包括:基于在第二循环中包括的指令之间的数据依赖性,将所述指令分配给在第一循环被调度的周期中的可用的执行单元。
6.如权利要求1所述的方法,其中,调度第二循环的步骤包括:
确定将被用于调度第二循环的执行单元;
验证所确定的执行单元是否可用于第二循环被调度的周期中。
7.如权利要求1所述的方法,其中,调度第一循环的步骤包括:基于在第一循环中包括的指令之间的数据依赖性,将所述指令分配给在周期中的执行单元。
8.如权利要求1所述的方法,其中,所述展开步骤包括:基于针对展开计数的阈值和针对被展开的调度结果的周期数的阈值中的至少一个,确定是否将展开调度第一循环的结果。
9.如权利要求1所述的方法,其中,调度第二循环的步骤包括:响应于第一循环的迭代计数大于第二循环的迭代计数,在第二循环被迭代之后,使用声明防护来限制第二循环的执行。
10.如权利要求1所述的方法,调度第二循环的步骤包括:
响应于第一循环的迭代计数小于第二循环的迭代计数,在第一循环被迭代之后,调度第二循环以迭代第二循环的剩余部分。
11.如权利要求10所述的方法,还包括:
在第一循环被迭代之后,调度用于存储第二循环的中间数据的指令。
12.一种控制器,包括:
选择器,被配置为从在源代码中包括的多个循环中选择独立的多个循环;
检测器,被配置为在所选择的多个循环之中确定第一循环和第二循环;
调度器,被配置为使用多个执行单元调度第一循环,并使用所述多个执行单元之中的在调度第一循环之后可用的剩余的执行单元来调度第二循环;
产生器,被配置为产生包括对第一循环调度的结果和对第二循环调度的结果的目标代码,
其中,第一循环的优先级高于第二循环的优先级,
其中,调度器还被配置为调度第二循环以进行以下操作:
响应于第一循环的迭代计数小于第二循环的迭代计数,迭代第二循环的剩余部分,并且
响应于第一循环的迭代计数大于第二循环的迭代计数,在第二循环被迭代之后,使用声明防护来限制第二循环的执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于三星电子株式会社,未经三星电子株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410678024.2/1.html,转载请声明来源钻瓜专利网。





