- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译器的性能监控_分析和调试方案
第30卷 第12期 计 算 机 工 程 Computer Engineering 2004年6月 June 2004 № 12 Vol.30 文献标识码:A · 基金项目论文· 中图分类号: TP302.7 文章编号:1000—3428(2004)12 —0037—03 编译器的性能监控、分析和调试方案 连瑞琦,干 戈,吕 方 (中国科学院计算技术研究所系统结构室,北京 100080) 要:介绍了在基于IA64体系结构的高性能优化编译器ORC的性能调试阶段所开发的工具、利用的方法和积累的经验。实验数据部分给出 摘 了ORC性能调试阶段的实际情况,证明了文中介绍的工具、经验和方法在找到新的优化机会、快速定位并排除性能下降和保持性能稳步上升 等多方面都是行之有效的。 关键词:编译器;性能监控;分析;调试 Approach of Performance Monitoring, Analyzing and Tuning of Compiler LIAN Ruiqi,GAN Ge,LV Fang (Computer Architecture Laboratory, Institute of Computing Technology, Chinese Academy of Science,Beijing 100080) 【 Abstract 】This paper introduces the methodology used in analyzing and tuning ORC (open research compiler), an open resource compiler based on IA64 architecture. It consists of a series of tools, methods and some experiences. Some successful stories and real performance trend can prove that it is a practical and effective methodology and it can also be used in the performance analysing and tuning of other applications. 【Key words】Compiler;Performance monitoring;Analysis;Tuning 1 概述 性能是优化编译器的一个重要指标,直接决定了整个编 译器项目是否能取得成功。因此,除总体设计、编码、正确 性调试外,性能的监控和分析调试也是开发高性能优化编译 器过程中必不可少的重要部分。但是,由于不存在公认的比 较成熟的、系统化的方法进行性能的监控和调试,编译器项 目性能调试人员往往需要进行大量工作,但却收获甚微。 本文介绍的是基于通用芯片的编译器的系统化的性能监 控、分析和调试策略,至今尚没有见到和本文完全类似的工 作。和本文相关的工作有以下几类:(1)性能调试工具:除 将要提到的PFMON[1]外,Vtune[3]是Intel开发的基于IA64体系 结构的性能调试工具,它的内核与PFMON是相同的。(2)基 于IA64体系结构的编译器系统:这些编译器系统有SGI 的 Pro64[4] ,GNU的GCC, Intel的 ECC, UIUC的IMPACT[7] 等 。 (3) 针对多线程、SMP 等并行体系结构编译器的性能的调 整,这些文献的针对性非常强,重点在于提高某类应用的性 能,而不是讨论编译器性能调试的方法学问题。 2 ORC性能调试工具和方法 2.1 基本构架 总体来讲,在ORC 中,性能调试阶段主要由性能监 控、性能分析和性能调试3部分组成,各部分的作用是:性 能分析帮助找到原始设计中的缺陷并且找到新的优化机会, 并且帮助理解各个优化阶段之间的相互作用。性能监控跟踪 每天的性能变化趋势。在开发期间,每天都有新的改动加 入,这些改动可能造成意想不到的性能下降,因为开发人员 不可能预料到自己改动的所有副作用,这时需要及时发现这 个变化,这样才有利于很快地定位出造成下降的原因,并解 决问题。此外,性能监控还有助于量化地了解每种优化或改 动对性能的影响。性能调试是指在性能分析的基础上进行优 化种类和优化方案的取舍,并为每种优化找到适当的评价函 数和启发式信息。 这3者之间的关系如图1所示。 变化趋势 工具集 性能变化 化原因 发现优化机会 选择最优算法 图1 性能监控、性能分析和性能调试之间的关系 在ORC的开发过程中,性能分析、性能监控和性能调 试都发挥了其应有的作用,取得了较好的效果。在这个过程 中,我们开发和使用了若干工具,摸索和总
文档评论(0)