[发明专利]一种编译器的代码优化调度方法有效

专利信息
申请号: 201610159967.3 申请日: 2016-03-21
公开(公告)号: CN105843660B 公开(公告)日: 2019-04-02
发明(设计)人: 吴俊;李涵;任浩琪;张志峰;赵朝兴;雷蕾;常睿 申请(专利权)人: 同济大学
主分类号: G06F8/41 分类号: G06F8/41
代理公司: 上海科盛知识产权代理有限公司 31225 代理人: 叶敏华
地址: 200092 *** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明涉及一种编译器的代码优化调度方法,应用于VLIW类型处理器,该方法包括以下步骤:(1)将代码划分成基本块;(2)对每个基本块建立数据依赖图,所述的数据依赖图包括多个结点和用于连接结点的边,所述的结点表示指令及指令所需要的机器资源,所述的边表示指令之间的数据相关性;(3)对代码进行全局调度;(4)对代码进行拓扑排序。与现有技术相比,本发明具有能更好的适应VLIW处理器等优点。
搜索关键词: 一种 编译器 代码 优化 调度 方法
【主权项】:
1.一种编译器的代码优化调度方法,应用于VLIW类型处理器,其特征在于,该方法包括以下步骤:(1)将代码划分成基本块;(2)对每个基本块建立数据依赖图,所述的数据依赖图包括多个结点和用于连接结点的边,所述的结点表示指令及指令所需要的机器资源,所述的边表示指令之间的数据相关性;(3)对代码进行全局调度;(4)对代码进行拓扑排序;所述的步骤(4)中采用带优先级的启发式函数来调度结点,调度一个基本块的过程具体为:(401)选取数据依赖图中所有没有输入边的结点,组成集合NoneInput(N);(402)初始化package,并将集合NoneInput(N)中结点值最大的结点加入package,按照结点值从大到小的顺序,依次检查结点是否满足槽约束条件,并将满足槽约束条件的结点加入package,并从集合NoneInput(N)和数据依赖图中删除,并把这些结点的输出边的值减一,直到集合NoneInput(N)为空,则插入Nop指令并结束该package;(403)检查数据依赖图,把所有没有输入的结点加入集合NoneInput(N)中,并执行步骤(402),重复步骤(403)。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于同济大学,未经同济大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201610159967.3/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top