网站大量收购独家精品文档,联系QQ:2885784924

基于profiling的编译技术-计算机体系结构专业论文.docxVIP

基于profiling的编译技术-计算机体系结构专业论文.docx

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于profiling的编译技术-计算机体系结构专业论文

摘爱丁『)j 摘爱 丁『)j w 。 摘要 I编译器为了生成高性能的代码,需要在生成代码时进行优化。传统的优化技术都是 建、Fzi·对源程序静态分析的基础之上的,所依据的信息都是静态的信息。静态优化的方 澎、n.过去的几十年里有了引人注目的发展,许多优化的技术和算法都很成熟,代码的性 能得到了较大的提高,但是静态优化所用的静态信息,有些是估算出的,静态的信息往 {{:和程序实际运行的情况有很大的区别,从而使优化达不到理想的效果。这就需要一种 技术,可以收集优化所需要的程序运行时的动态信息,并将收集到的信息返回给编译器, 指导编译器对代码的优化。厂己 Profiling用来收集一个程序运行时的数据,它可以记录并保存代码优化时所需的信 扈。同时将收集到的信息反馈给编泽器,以便其对代码进行各种优化。对采用profiling 技术/l’进行优化的编译器,称为基于profiling的编译器,它可以在静态优化的基础上, 对代码性能有进一步的提高。Profiling包括用于控制流分析的profiling和用于数据流分 析的profiling。基于profiling的编译器成为当前编译器研究的一个热点。本文对profiling 技术进行了有益的尝试。 本文围绕着控制流的edge profiling、path profiling技术以及数据流的value profiling, 研究了以下的问题: ①在讲述edge profiling,valueprofiling实现的基础上,研究了如何建立一个profiling 框架,方便其他人加入新的profiling。/本文介绍了我们在ORC(IA64 Open Research Compiler)中,实现的edge profiling和value profiling,并讲述如何利用profiling的反馈 信息,对代码进行优化,从而使编译器产生的编码性能有较大的提高。J1 ②提出并探讨了利用profiling信息,结合程序调用关系图来自动的实现高效能的函 数inline。慵0用产生的edge profiling信息,获取了各个函数调用的次数,对于一些调用 次数高的函数,将其自动内嵌代码当中,以使代码的性能得到提高。j o ③设计一个一体化的控制流profiling。/该profiling将path profiling和edge profiling 结合起来,从该profiling产生的反馈信息可以提取出pathprofiling信息和edge profiling 信息。同时为其他的控制流优化,提供不同的综合信息。J , f本文的作者直接参加了中科院计算所同Intel公司合作项目“IA6开放源语言编译系 统ORC”,和国家自然基金项目“并行程序设计环境关键技术”,并得到这些项目的资 助。{f ABSTRACTDong ABSTRACT Dong Xiqian(Computer System Architecture) Directed By Zhang Zhaoqing The compiler will optimize the code in order to get high performance.A traditional optimizing compiler relies entirely on static analysis of the program’S source code,and the information iS static.The optimization which depends on static information has increased dramatically ln the last decade.The optimization technique and the algorithm have proven their worth in the increased perforlTlance of programs.However,static analysis by definition can only guess at the performance characteristics of a program.the static information iS different from the true iRln—time characteristies of a program,so the performance can’t be improved as we expect.We need a kind of technique that can get the run.time information of a program Th

您可能关注的文档

文档评论(0)

131****9843 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档