[发明专利]一种计算机程序热点的动态剖析机制无效
申请号: | 201010506046.2 | 申请日: | 2010-10-14 |
公开(公告)号: | CN101963907A | 公开(公告)日: | 2011-02-02 |
发明(设计)人: | 周学海;张惠臻;纪金松;王超;马宏星 | 申请(专利权)人: | 中国科学技术大学苏州研究院 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 楼高潮 |
地址: | 215000 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算机 程序 热点 动态 剖析 机制 | ||
技术领域
本发明涉及一种计算机程序中频繁执行的热点模块的动态发现方法,特别涉及一种利用计算机程序执行过程信息的基于路径分析的动态剖析机制。
背景技术
90%以上的程序执行时间消耗在大约10%的代码,即热点代码上。对热点代码进行优化,能显著提高程序性能。在指令集扩展和动态二进制翻译等研究中,热点识别技术有着重要的应用。
程序路径的概念在学术界很早就有提及。1996年威斯康星大学的Ball和Larus提出了针对路径剖析信息的可行性方法,能自动有效地对过程内无环序列(BL路径)完成剖析统计。BL路径主要有两个缺陷:一是局限于单个基本块内部,不能提供程序控制流中跨过程和跨循环的信息;二是开销过大,额外的时间开销平均约为30%~45%。后续的研究工作多以克服BL路径的某个缺陷展开。
在扩展路径信息方面,出现了基于全程序路径(whole program path,WPP)和可扩展路径的方法。WPP在BL路径的基础上增加了对基本块入口和循环回边的处理,而Tallam等提出的可扩展路径的方法使用部分重复的思想将在循环或过程调用两侧的两条BL路径连接起来。但上述技术的剖析代价仍然太高。对此,Arnold和Joshi利用采样和关键边等技术,在保证一定剖析准确度的前提下有效地降低了剖析代价;Bond使用边剖析信息来简化路径剖析过程。但上述方法增加了获得基本剖析信息的时间,无法及时优化,导致最终能获得的优化可能性减小。
随着系统性能分析技术的发展,许多处理器如SPARC、Pentium2IV等都提供了事件计数器之类的硬件来支持性能监测。基于此,Conte使用传统处理器中的分支处理逻辑来记录剖析信息。Narayanasamy等人设计了一种Multi2Has的硬件框架来实现硬件剖析。K.Vaswa2ni在已有硬件剖析的基础上,利用路径剖析技术专门设计了基于堆栈和散列表实现的硬件剖析器,适用于不同类型的路径剖析,但因其与处理器紧密耦合而受限于特定的体系结构。此外,还有一些利用点剖析技术收集程序运行信息的硬件剖析器。
现有研究中,剖析技术多使用软件实现。软件剖析修改方便、收集信息完整,但剖析开销较大,准确性依赖于精心设计的测试代码。
发明内容
本发明的目的就是为了解决现有技术中存在的上述问题,提供一种计算机程序热点的动态剖析机制,可以有效地进行热点识别。
为解决上述技术方案,实现上述技术目的,本发明通过以下技术方案来实现:
一种计算机程序热点的动态剖析机制,包括基于可配置动态硬件剖析器(CHDPP)的分支识别模块、路径探测模块和存储模块,所述分支识别模块、路径探测模块和存储模块可以通过配置来适用于不同的体系结构,完成计算机程序热点的硬件的动态剖析。
与常见的硬件剖析器不同,CHDPP不集成在处理器内部,而是与处理器松散耦合,通过监测数据总线和地址总线来完成工作。CHDPP不需要了解与处理器相关的微体系结构信息,这使得其能够作为独立的功能部件单独使用,有利于降低可重构指令集处理器(RISP)设计的难度。同时,CHDPP具有可配置性,能够适用于不同的指令集体系结构
一种计算机程序热点的动态剖析机制,其特征在于:包括如下步骤,
步骤①分析指令
分析计算机处理器的指令集,包括指令及地址信息,将其中的分支指令操作码以及掩码保存在内容寻址存储器中;
步骤②译码器译码
在计算机的每个时钟周期,从数据总线和地址总线分别读取指令及地址信息,译码器根据内容寻址存储器中的配置对指令进行译码;
步骤③指令分类
分支归类器对译码得到的分支指令进行分类,识别出其中的分支指令,并判定其分支方向,所述分支方向包括前进分支、回转分支、过程调用和过程返回;
步骤④生成热点路径及记录其相关信息
路径探测模块利用分类后的分支指令信息跟踪程序的执行过程,采用一种类似基本块地址索引的紧凑的路径描述生成热点路径及记录其相关信息,所述路径描述由路径长度、分支跳转记录和路径起始地址构成;
步骤⑤完成热点路径表
在控制寄存器的控制下,通过路径剖析器完成剖析,剖析得到的路径描述符保存在存储模块的热点路径表中。
与现有技术相比,本发明具有以下显著的优点:
1、CHDPP不集成在处理器内部,而是与处理器松散耦合,通过监测数据总线和地址总线来完成工作。
2、CHDPP不需要了解与处理器相关的微体系结构信息,这使得其能够作为独立的功能部件单独使用,有利于降低RISP设计的难度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学技术大学苏州研究院,未经中国科学技术大学苏州研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010506046.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种新型猴车运料装置
- 下一篇:直流正负极防错接系统及其使用方法