| 【论文摘要】 |
动态二进制翻译和动态优化是软件移植和提升系统性能的新途径,近年来围绕该领域展开了大量研究,并出现了一系列有影响的系统。动态二进制翻译和动态优化的主要特点在于将原本需要在静态完成的工作延迟到运行时,从而对开销的限制提高了要求,必须承认,作为具有移植背景的技术来说,这是其被动的一面。但延迟到运行时也有其积极的意义和特殊的机会,那就是可以利用静态无法获得的即时信息进行有针对性的优化。鉴于此,在技术路线上,动态二进制翻译和动态优化也应该采取跟静态编译及优化不同的途径,静态侧重分析,而动态则应侧重反馈;静态要求全面,而动态则强调重点;静态算法追求最优性,而动态的策略讲究简单高效。
本论文分为两个相对独立的部分,第一部分探讨动态二进制翻译中如何解决效率和翻译质量相协调的问题,与编译时依靠分析的优化方法不同,我们将统计大概率出现的模式提取出来,对其进行优化翻译的工作在离线时完成,并将这些模式的优化翻译方式嵌入到翻译器本身,一旦遇到该模式即可套用之。该方法既可以优化翻译质量,又减少了大量运行时优化开销。
第二部分比较动态优化中的热路径预测策略。热路径预测是动态优化中的关键,它涉及到如何高效的收集程序... |