基于QEMU的热点代码探测与动态优化模型的研究与实现

来源 :电子科技大学 | 被引量 : 2次 | 上传用户:houzi7731
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
二进制翻译技术是实现软件跨平台移植和硬件仿真的核心技术,采用二进制翻译技术能使不同处理器体系架构的可执行目标文件能够跨硬件平台以及跨操作系统执行,同时还能实现硬件逻辑的验证,系统软件的调试等。动态二进制翻译技术是目前最热门的二进制翻译技术。它采用边翻译边执行的策略实现对目标架构的指令向本地架构的指令转化,具有实时翻译、迅速响应、多源多目标等特性。然而,动态二进制翻译技术还处于不断发展的阶段,有许多尚待完善之处,例如,将动态二进制翻译技术与硬件技术结合,以加速仿真器的执行;引入新型的优化算法来提高代码翻译的质量等。如何实现快速翻译和优化一直是动态二进制翻译技术的研究热点。QEMU是一个典型的动态二进制翻译系统,它能实现对目标架构指令的实时翻译和执行,并具有多源多目标、快速翻译、支持自引用/自修改代码等特性。然而,较之于快速翻译,在其生成的主机代码中,有许多不必要的内存存取操作以及寄存器移动操作,这些指令的执行将导致极大的开销;另外,QEMU采用串行化的方式来实现目标指令翻译、优化和执行,这种方式将造成许多优化无法进行,这是由于优化操作需要进行耗时的分析,造成极大的优化开销,常常得不偿失。文章对QEMU的TCG翻译引擎进行了详细研究,并在此基础上提出了一种热点代码探测与动态优化模型:结合处理器多核心以及多线程技术,通过代码插装及NET算法实现QEMU的热点代码探测,将探测到的热点代码块进行合并,生成一个超级块,并对超级块进行深度优化,以产生精简的主机代码。文章采用多线程技术,让合并和优化例程在不同的线程中执行,这使得核心仿真线程不会考虑优化算法带来的开销。多个线程同时在不同的处理器核心中并行执行,使得原始QEMU的串行化执行转换为并行化执行,有效地提升处理器的利用率,从而改进QEMU的性能。此外,文章还提出一种新颖的优化方法——委托机制,该机制能够有效消除代码中存在的内存加载操作以及寄存器移动操作,以提升翻译后代码的质量,从而达到代码优化的目的。以QEMU-ARM仿真平台进行测试,实现结果表明,该模型能够有效提升QEMU的平均执行性能约10%。
其他文献
<正>为什么提出企业的五行管理?为了"简易化",也就是管理理论的简易化。当今各种管理理论、模型与工具有复杂化的趋势。有些理论与数学结合起来复杂化,有些则与哲学结合起来
2011年律师业已经恢复32年了,律师业在社会生活和经济生活中发挥了重要的作用,但是,也面临着前所未有的巨大的挑战。法律服务竞争异常激烈,律师事务所处于一个完全竞争的市场中。
目的:分析比较性病门诊就诊人群及病房住院人群HSV-1、HSV-2、梅毒及HIV的感染状况,评估HSV-1、HSV-2、梅毒、HIV及其共感染相关的高危因素,为生殖器疱疹、梅毒及HIV的综合防
整枝是西瓜重要栽培措施之一,不同整枝方式对西瓜产量有着显著的影响。试验结果表明,双蔓和三蔓式整枝主侧蔓生长势强,T/R大,光合效率高,营养蔓与结果蔓协调、不易早衰,西瓜坐果节位
近年来,随着国家的经济快速增长与国家基础建设的迅速发展,我国的人造板工业目前正处于高速发展的时期,其在房屋建造、车船建造、家具建造等领域发挥着重要的作用,同时也是我国经
本文通过央视主持人撒贝宁在《加油!向未来》等一系列节目中的表现,解析主持人类型化问题所引发的主持理论的现象学思考。节目素质与主持人素质相契合的概念构造在新的传播语
欧洲空间展望(ESDP)是为促进欧盟的地区平衡与可持续发展、进一步推进欧盟的一体化进程而制定的。文章首先分析了欧盟的空间发展形势和目标,并进一步分析了共同体政策的空间
通过总结工作实践经验,分析了在胶合剂使用中的一些误区,提出了合理利用水泥胶合剂一些建议。
随着网络新媒介的崛起,开放的公共空间吸引了更多的人参与到内容的生产之中,在此过程中,网络文字涂鸦成为亚文化群体宣泄、反叛和解构的工具。通过文字涂鸦,公众表达的原有障
研究目的:观察7周太极拳与北欧健步走运动对听觉事件相关电位P50和P300的影响,探讨不同运动形式对人体注意能力的影响,以便评价听觉事件相关电位在健身运动影响下的变化规律。