[发明专利]基于模拟器的微处理器微体系结构参数优化方法有效
申请号: | 201410673313.3 | 申请日: | 2014-11-21 |
公开(公告)号: | CN104361183B | 公开(公告)日: | 2017-09-01 |
发明(设计)人: | 王永文;王蕾;窦强;邓宇;赵天磊;黄立波;陈微;隋兵才;倪小强;孙彩霞;张承义;高军 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F17/50 | 分类号: | G06F17/50 |
代理公司: | 湖南兆弘专利事务所(普通合伙)43008 | 代理人: | 赵洪,谭武艺 |
地址: | 410073 湖南省长沙市砚瓦池正街47号中国*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 模拟器 微处理器 体系结构 参数 优化 方法 | ||
技术领域
本发明涉及微处理器设计阶段的早期分析微处理器的性能,具体涉及一种基于模拟器的微处理器微体系结构参数优化方法。
背景技术
在设计起始阶段如何确定最优的微体系结构参数组合是项有挑战的工作。这里“最优”指的是针对某种类型的应用程序能够达到最优的性能。能够达到最优的微体系结构参数配置,而且,最优的微体系结构参数组合应该是在执行目标程序时处理器中的各项资源不存在利用率低下和等待时间过长的问题。
当前在微处理器设计早期进行设计空间探索,一般是通过在时钟精确的模拟器上运行benchmark程序,如SPEC2000,SPEC2006等程序,来获得程序运行的时间,和各项统计信息。模拟器的运行速度比较慢,如在时钟精确的模拟器上运行有代表性的测试程序(如SPEC 2000)来获取性能,往往需要花费若干个星期。而微处理器的设计工期一般都比较紧,在有限的时间内只能对几种微体系结构的参数配置进行试验。此外,模拟器虽然提供了大量的性能统计信息,如Cache失效率,分支预测失效率,取指数,提交指令数等信息,但是这些信息的粒度太粗,很难得出系统瓶颈的具体信息。因此,这种方法的使用非常受限。
现有技术的通过时钟精确模拟器运行benchmark程序分析结果,进行微处理器设计空间探索的方法存在如下缺陷:第一,通过在模拟器上运行benchmark程序,获得的性能统计信息粒度较粗,无法获得具体程序的细粒度的执行情况。如执行程序的哪段代码耗费的时间最长,是什么原因导致耗费时间长等等细粒度信息,目前是无法通过模拟器的输出而获得的。第二,基于粗粒度的模拟分析结果进行设计空间探索,较为盲目,而且每轮迭代耗费时间长。因此在微处理器设计的早期,如何充分利用时钟精确模拟器进行快速有效的设计空间探索,已经成为一项亟待解决的关键技术问题。
发明内容
本发明要解决的技术问题是:针对现有技术的上述技术问题,提供一种够在微处理器微体系结构设计早期对流水线结构、系统资源等微体系结构参数进行快速的设计探索,优化细粒度好、性能分析优化效果好、优化快速高效的基于模拟器的微处理器微体系结构参数优化方法。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于模拟器的微处理器微体系结构参数优化方法,其实施步骤如下:
1)分析时钟精确的模拟器所描述的处理器微体系结构,构造微处理器的流水线模型;
2)在所述模拟器上运行目标应用程序,获得模拟器的模拟输出;
3)根据所述流水线模型,模拟输出生成描述目标应用程序在目标微处理器的时钟精确的模拟器上运行的有向无环图作为相关图,产生和修正所述相关图中有向边的权值;
4)计算所述有向无环图的关键路径得到关键路径矩阵,关键路径长度表示当前程序段在该处理器上执行的时间,根据关键路径矩阵列出关键路径所经过的节点,根据关键路径的节点和边的组成、关键路径中每种类型边的数量和延迟之和生成关键路径报告;计算每个节点的每个入边的松弛时间并生成松弛时间报告;
5)以所述关键路径报告、松弛时间报告为基础,分析微处理器在当前微体系结构参数配置下运行目标应用程序的性能瓶颈或功耗瓶颈;
6)根据微处理器在当前微体系结构参数配置下运行目标应用程序的性能瓶颈或功耗瓶颈的分析结果判断微处理器微体系结构的参数是否需要优化,如果需要优化则将微体系结构参数进行调整,并跳转执行步骤1);如果不需要优化,则结束并退出。
优选地,所述步骤2)中获得模拟器的模拟输出包括:
2.1)在模拟器上运行的目标测试程序的动态指令序列;
2.2)动态指令序列的指令间的相关关系,所述指令间的相关关系包括指令间的数据相关、控制相关和结构相关信息;
2.3)动态指令序列每条指令所使用的功能单元;
2.4)分支指令的分支预测结果;
2.5)每条指令进入每个流水段和离开每个流水段的时间。
优选地,所述步骤2.2)中的所述数据相关是指流水线中后发射的指令的源操作数是先发射指令的目的操作数,后发射的指令必须要等待先发射的数据相关的指令计算出结果后才能获得源操作数并继续执行;所述控制相关是指流水线中后发射的跳转指令的判断条件是先发射指令的计算结果,后面的跳转指令必须要等待先发射的相关指令计算出结果后才能真正得到解析得出指令流的正确方向;所述结构相关流水线中先发射的指令和后发射的指令使用相同的功能单元或者有限的系统资源。
优选地,所述步骤3)的详细步骤如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410673313.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:滤芯更换的方法及装置
- 下一篇:一种便携式数据采集卡及其方法