基于在线反馈信息的动态编译优化技术研究

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

北京航空航天大学硕士学位论文i论文题目:基于在线反馈信息的动态编译优化技术研究计算机软件与理论专业二零零三级硕士研究生周晶导师王雷摘要在线反馈信息指导的编译优化技术(OnlineFeedbackDirectedOptimization)被广泛应用于多种动态运行时环境之中,例如,Java,LISP,SELF等等。由于动态编译发生在程序的执行过程中,所以编译器必须在优化所能带来的性能提升和编译开销上做出“细致”的均衡,以使系统的整体性能达到昀优,而很好地做到这一点往往是很困难的。在Java虚拟机中,传统的基于插装的Profiling技术往往不能得到方法间的调用关系,因此,采用这种机制的动态编译器会丧失一些优化机会,例如方法内联。本文通过对程序插装Profiling技术的改进,实现了基于在线反馈信息的动态内联策略,该策略可以更加准确地判断虚方法的接收者对象类型,从而使应用程序的性能得到提升。本文提出的方法内联中的持续监控策略可以在程序运行时对同一调用点处的虚方法调用情况进行持续监控。如果虚方法的接收者对象类型发生变化,该策略可以准确地检测到这种变化并采取有效的解决方案,从而提高系统的整体性能。对已编译代码的动态卸载算法可以在运行时检测出系统中的冗余代码,同时对这些代码以及与其相关的资源进行释放,从而减轻系统的负载。通过运行SpecJVM98和JavaGrandeForumBenchmark(JGF)等一系列评测标准,动态内联策略可以使虚拟机的性能平均提升4.01%,内联优化中的持续监控算法则可以准确地检测到程序中的状态迁移并采取有效的应对策略,进而使系统的性能平均提升6.49%,同时动态卸载算法也可以在一定程度上减轻系统的运行时负载。关键词:在线,反馈信息,编译优化摘要iiTitleofThesis:ResearchonOnlineFeedbackDirectedOptimizationSpecialtyMajor:ComputerSoftwareandTheoryDateofEnrollment:Sep,2003Author:ZhouJingTutor:WangLeiABSTRACTOnlineFeedbackDirectedOptimizationisappliedinmuchdynamicruntimeenvironment,forexample,Java,LISP,SELF,etc.Becausethedynamicoptimizationhappensintheexecutionprocess,thecompilermustanalysethetrade-offbeiweenthecompilationoverheadandthebenefitgainedfromtheoptimizationtoreachthebestperformancespeedup,butitisnoteasytoachieve.IntheJVMs,traditionalprogram-instrumentationprofilingtechnologyusuallycannotgetthecaller-calleerelationship,therefore,thedynamiccompilerwhichappliedthisschemewouldlosesomeoptimizationopportunities,suchasmethodinlining.Byimprovingthistechnology,thispaperproposedadynamicinliningschemebasedononlinefeedbackinformation,thisschemecanidentifythetypeofvirtualmethod’sreceiverobjectmoreprecisely,andthenitcanincreaseapplications’performance.Thecontinuousmonitoringinmethodinliningproposedbythispapercanmonitorthevirtualmethodsinvokedatthesamecall-sitewhenaprogramisexecuting.Ifthetypeofreceiverobjecthaschanged,thisschemecandetectthischangeaccuratelyandtakeacorrespondingsolution,andincreasetheperformanceofthesystem.ThedynamicunloadingalgorithmforJITedcodecanfindouttheredundantcode,releaseitandotherresourcerelatedwithit,andthenreducethesystemload.ByrunningtheSpecJVM98,JavaGrandeForumBenchmark(JGF)andotherbenchmarks,thedynamicinliningschemecanimprovetheperformanceofJVMby4.01%onaverage,thecontinuousmonitoringinmethodinliningcandetectthephaseshiftandtakecorrespondingsolution,thespeedupofthisalgorithmis6.49%onaverage,andthesystemloadisreducedby北京航空航天大学硕士学位论文iiithedynamicunloadingalgorithm.Keywords:Online,FeedbackInformation,Optimization北京航空航天大学硕士学位论文1目录第一章绪论..............................................................51.1课题研究背景及意义.................................................................................................51.2相关技术的研究现状.................................................................................................61.3课题的内容.................................................................................................................81.4本文的组织.................................................................................................................91.5小结...........................................................................................................................10第二章Java语言和Java虚拟机...........................................112.1Java体系结构............................................................................................................112.2Java语言....................................................................................................................122.2.1Java语言的特点.............................................................................................132.3Java虚拟机................................................................................................................152.3.1Java虚拟机简介.............................................................................................152.3.2Java虚拟机体系结构介绍.............................................................................162.3.3ORP虚拟机结构............................................................................................222.4小结...........................................................................................................................24第三章基于在线反馈信息的动态内联优化...................................263.1Profiling技术介绍与改进.........................................................................................263.1.1软件Profiling技术........................................................................................263.1.2硬件Profiling技术........................................................................................293.1.3程序插装Profiling技术的缺陷及解决方案................................................303.2方法内联...................................................................................................................343.2.1方法内联简介................................................................................................353.2.2ORP的内联流程............................................................................................363.3基于在线反馈信息的动态内联优化........................................................

1 / 92
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功