- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
多层Cache分析模块的设计与测试.doc
多层Cache分析模块的设计与测试
摘 要:该文主要介绍了实验是在什么样的系统配置和测试数据集上开展的。通过实验结果的对比可以看出,采用多层Cache分析,可以有效的发掘程序Cache访问的局部特性,得到更加精确的WCET估计值。
关键词:WCET 测试数据 多层Cache分析
中图分类号:UG64 文献标识码:A 文章编号:1672-3791(2015)02(b)-0012-02
该文设计并实现了“基于抽象解释技术的多层Cache分析”。该分析方法按照程序中循环的嵌套关系,首先将程序划分成若干个层次。之后,按照传统基于抽象解释技术的分析手段,针对每个层次对应的循环体,分别进行分析,探索程序的局部Cache访问特性。最终,根据各个层次的分析得到的结果,进行整数线性规划的编码,并计算出更加精确的WCET估计值。
1 系统设计原则
根据服务对象以及功能性需求,人们认为“基于抽象解释技术的多层Cache分析”模块的设计应符合以下原则。(1)功能稳定。Cache是处理机微体系结构中的重要组成部件,因此Cache分析模块也是一个WCET分析工具中的核心组件。其分析结果,直接影响到工具的其它分析功能。因此,该模块的分析必须保证功能完整稳定,把可能出现的错误降到最低。(2)规范性。从软件周期上来考虑,软件维护阶段在软件生命周期或生存期中占较大比重,有的可达软件生存周期的50%~70%。因此,在该软件的设计过程中,在各方面都应该遵从业界广为接受的软件开发规范,以尽可能提高后期软件的可维护性。(3)良好的可扩展性。可扩展性是软件工程追求的目标,能够大大提高软件的复用程度,降低开发成本。从该文所设计的软件自身特性来看,未来还有很大的功能扩展空间。为此,该软件的设计应尽可能模块化,并具有良好的层次结构。各模块与各层次之间定义明确的接口。这样在未来增加新功能的过程中,可以利用已有的功能实现更加复杂的功能,并大大增加代码的可重用性。
2 系统总体设计
图1表示了该文所属的WCET分析工具完整的工作流程。其中图中的数字1、2、3表示的是该文的工作在整个工具中所处的位置。下面,该文将对整个工具的工作流程作以简要介绍。首先介绍不增加该文工作的,WCET分析的原有工作流程。之后,再重点介绍该文所增加的主要功能。
在这一小节中,主要介绍给定一个程序的控制流程图,如何从中抽取程序的层次结构。在介绍这一功能的实现之前,首先用一个简单的例子,阐明对于一个一般的程序,它的层次结构应该是一种什么样的构造。
图2表示了一个复杂的程序控制流程图,该文将利用这个控制流程图来介绍程序层次结构的概念。首先,为了简化表达,把整个程序看作是一个最外层的循环体,这样,整个大图就占据一个程序的层次,称其为Level-0,如图中虚线所示。在这个程序的控制流程图中,可以看到,最上层的结构是一个分支结构,有一个循环,Loop1,位于程序左边的分支中;有两个循环,Loop2和Loop3,位于程序右边的分支中,且Loop3位于Loop2中,前者是后者的内层嵌套循环。根据这一关系,可知,Loop1和Loop2都是整个程序中的第一级循环,因此这两个循环都属于Level-0的下一个层次,称其为Level-1。类似的,Loop3位于Loop2的内部,因此,它存在于Loop2所在层次的下一层,称其为Level-2。
以上程序的层次结构,也可以通过图3所示的树形结构进行表示。其中,整个程序所在的Level-0是树的根节点,它有两个树枝节点,分别对应于位于Level-1的Loop1和Loop2;Loop2又有一个叶子节点,为Loop3,位于Level-2。
对于一个程序及其对应的控制流程图而言,需要得到的就是图3所示的层次结构。在下面一小节中,将介绍采用什么算法将一个给定的控制流程图对应的层次结构抽取出来。
3 参数配置与测试程序集
系统体系结构参数主要包括Cache的相连度、Cache的块大小、Cache中包含的Cache组的数量和指令到内存存取时间等。该实验将这几项特性的参数配置为如表1所示。所有的循环上限设置为10。
实验部分所采用的程序是从Mlardalen测试程序集中选取的6个测试程序。表2列出了关于这6个测试程序的一些基本信息,包括程序中包含的指令条数和循环个数等,这些信息能够在一定程度上反映出程序的复杂度。
4 实验结果
针对上一小节所给出的体系结构特性参数,也就是系统Cache配置参数,针对LRU替换算法,分别计算表2中的6个测试程序的WCET估计值。实验结果如表3所示。该文分别给出了两组实验结果。第一组实验结果对应于传统的单层Cache分析方法,第二组实验结果对应于本文设计实现的多层Ca
您可能关注的文档
最近下载
- (浙大中控)DCS功能块使用手册.pdf VIP
- 2025年班组长综合管理技能竞赛理论考试题库500题(含答案).doc VIP
- 专题01:必修上册文言知识梳理-2025年高考语文一轮复习知识清单含解析.docx VIP
- 2025年银龄教师聘用协议书 .pdf VIP
- 2025年山西航空产业集团有限公司招聘考试笔试试题.docx VIP
- 2025开展全国《质量月》活动方案 .docx VIP
- 2025译林版新教材高中英语必修第一册课文译文.pdf VIP
- 松下Panasonic MINAS A6系列通用型使用说明书 (综合篇) 中文.pdf
- 古典文献学第二章 文献的形成和流布.ppt VIP
- 沪教版数学五年级上册全册教案.doc VIP
文档评论(0)