首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到17条相似文献,搜索用时 187 毫秒
1.
动态二进制翻译系统是根据程序的动态执行信息来将源机器上的可执行代码翻译成目标机器上的可执行代码.在翻译成中间表示的过程中会产生一些冗余的LOAD指令,为提高代码的执行效率,提出对这些LOAD指令进行冗余删除优化.该优化技术可以使优化效果超过其自身的开销,达到优化的目的.  相似文献   

2.
动态二进制翻译与优化技术研究   总被引:2,自引:1,他引:2  
动态二进制翻译技术是一种即时编译技术,它将针对源体系结构编译生成的二进制代码(源机器码)动态翻译为可以在目的体系结构上运行的代码(翻译码).动态优化技术是指在运行时获取动态信息并进行代码优化的技术.动态二进制翻译及优化系统使得源软件无需重编译就可以直接在目标体系结构上高效地运行.目前几种比较有影响的动态二进制翻译及优化系统有Intel公司的IA-32 Execution Layer,IBM公司的DAISY,Transmeta的CMS及HP的Dynamo等.这些系统对动态二进制翻译系统关键技术有不同的实现.对动态二进制翻译和优化技术的研究是计算机领域的研究热点,具有深远的现实意义和应用前景.  相似文献   

3.
罗琼程  吴强 《计算机应用研究》2009,26(12):4572-4576
动态优化是动态二进制翻译研究中一个十分重要的课题,数据预取优化能提高现代处理器体系结构应用程序性能。基于超级块(Superblock)的动态数据预取优化采用软件插桩方式收集应用程序的load访存延迟信息并构造Superblock;然后根据延迟信息以及Superblock数据流分析得出的寄存器定值引用关系,对延迟load指令进行预取优化。通过在龙芯DigitalBridge动态二进制翻译系统上实验验证,数据预取优化可以提高翻译后SPEC2000浮点测试程序代码的平均性能3.3%,开销远小于0.5%。  相似文献   

4.
随着硬件平台的多元化,软件兼容性问题日益突出,二进制翻译技术是解决软件兼容性问题的重要手段.鉴于二进制翻译系统大部分执行时间消耗在后端指令的查找和执行过程中,高效的指令索引策略可以减少系统的指令查找开销,提高系统的整体效率.在对二进制翻译系统后端指令局部性特征进行统计分析的基础上,设计了一种能充分挖掘现代计算机系统硬件性能的二进制翻译指令分级索引策略.该策略结合二进制翻译系统后端指令特殊的局部性特征,使用针对性的替换算法对后端指令进行缓存,降低了系统的指令查找开销.在引入了LIIS索引策略后,开源二进制翻译系统QEMU的后端指令查找时间减少了70%,整个系统执行效率提高了15%.  相似文献   

5.
在跨平台系统虚拟机原型ARCH-BRIDGE的基础上,提出了一种基本块级的动态二进制翻译优化方法,通过两阶段翻译、基于虚拟寄存器的优化翻译及延迟机器状态提交等技术,可在不采用中间表示及确保精确异常的情况下,有效去除二进制翻译所引入的冗余。测试表明,优化后的ARCH-BRIDGE在翻译开销明显优于QEMU的同时,翻译块尺寸和翻译冗余得到了大幅降低,并且SPEC CPU2006、NBENCH及OS引导的性能均得到了显著提升。  相似文献   

6.
动态二进制翻译提供了无需重新编译源代码就能将源机器生成的可执行代码自动转换到目标机器的方法,很好地解决了代码兼容性问题.其核心思想是根据程序的动态运行信息找到反复执行的代码序列,对代码序列进行翻译和优化,并将结果多次重用.指令调度作为一种有效的编译优化手段,也适用于动态二进制翻译.在对gcc的指令调度器分析研究的基础上,结合动态二进制翻译的实时性特点,提出了适合动态二进制翻译的效率高、开销小的指令调度算法.  相似文献   

7.
计算机体系结构的不断发展,使得代码迁移工作变得尤为重要,在这种背景下,二进制翻译技术应运而生。二进制翻译技术使得在已有的体系结构下生成的可执行文件自动迁移到新的体系结构中成为可能。以龙芯2F处理器为硬件平台,研究二进制翻译器QEMU中冗余指令的删除优化技术,使用代码活性分析方法来降低代码膨胀度,提高执行效率。该优化技术带来的优化效果超过其自身开销,具有实际优化价值。  相似文献   

8.
二进制翻译是在不同硬件平台之间实现软件迁移的重要手段.在二进制翻译系统中,如何在没有标志位寄存器的目标平台上模拟实现源平台上标志位寄存器的功能,是影响系统性能的关键.现有的标志位分析技术通过对标志位的定值引用进行数据流分析,尽可能多地消除冗余的标志位定值.但是,对于那些会被引用的标志位定值,现有的技术仍然需要进行翻译.这不仅会导致翻译生成代码的膨胀,还会影响二进制翻译系统的性能.提出了一种二进制翻译中基于模式化的标志位翻译方法.该方法在标志位分析技术基础上,通过将源平台上标志位定值指令和引用指令组合成固定的标志位模式,然后根据模式的具体语义选择目标平台上具有相同语义功能的指令组合进行翻译.这种模式化的翻译方法,不仅可以降低因翻译标志位而引入的代码膨胀,还可以提升二进制翻译系统的性能.实验结果表明,对于SPEC CINT2006中的程序,该方法不仅可以使翻译生成的代码量平均减少7.5%,还可以将程序的性能平均提升10%.  相似文献   

9.
《信息与电脑》2019,(18):28-29
在动态二进制翻译系统中,指令的执行过程中通常会涉及频繁的上下文切换,很大程度上影响了AB(Architecture Bridge)系统的执行效率。为此,笔者提出了一种块链优化技术,通过指令间的直接跳转,有效减少上下文切换次数,对AB系统的翻译缓存进行优化,提高了动态二进制翻译系统中执行模块的时间占比。实验分析表明,块链优化技术能提供10%左右的加速比。  相似文献   

10.
二进制翻译中的标志位优化技术   总被引:2,自引:0,他引:2  
在二进制翻译技术中,如何有效降低对源指令集体系结构标志位的模拟开销是一个值得研究的课题.分别针对二进制翻译中的解释执行和动态翻译,提出了相应的标志位模拟优化算法,能够有效地减少翻译生成的目标代码数量,提高目标代码性能.经过大量测试验证,在应用该标志位模拟优化算法后,Digital Bridge系统翻译生成的目标代码量是源体系结构目标代码量的120%,而没有应用该优化算法时该比例是250%,作为对比系统UQDBT系统的比例是150%.  相似文献   

11.
Binary translation and dynamic optimization are widely used to provide compatibility between legacy and promising upcoming architectures on the level of executable binary codes. Dynamic optimization is one of the key contributors to dynamic binary translation system performance. At the same time it can be a major source of overhead, both in terms of CPU cycles and whole system latency, as long as optimization time is included in the execution time of the application under translation. One of the solutions that allow to eliminate dynamic optimization overhead is to perform optimization simultaneously with the execution, in a separate thread. In the paper we present implementation of this technique in full system dynamic binary translator. For this purpose, an infrastructure for multithreaded execution was implemented in binary translation system. This allowed running dynamic optimization in a separate thread independently of and concurrently with the main thread of execution of binary codes under translation. Depending on the computational resources available, this is achieved whether by interleaving the two threads on a single processor core or by moving optimization thread to an underutilized processor core. In the first case the latency introduced to the system by a computational intensive dynamic optimization is reduced. In the second case overlapping of execution and optimization threads also results in elimination of optimization time from the total execution time of original binary codes.  相似文献   

12.
提出动态二进制翻译的两种优化方案:基本块和热路径;分析了从代码中抽取值得优化部分的详细过程;同时也给出针对这两种方案的一些优化方法.最后简单介绍了当前一些动态二进制翻译系统所采用的优化技术.  相似文献   

13.
依据对系统级程序行为特性的观察,提出了一种基于热例程的动态二进制翻译优化方法。该方法以频繁执行的例程作为优化单位,通过块内和块间优化算法消除动态二进制翻译引入的冗余。相比基于踪迹的优化方法,该方法具有优化单位发现开销更小、代码区域更大、无重复翻译等优点,更适用于系统虚拟机中操作系统代码的优化。在跨平台系统虚拟机监控器ARCH-BRIDGE上的测试表明,通过对内核代码实施该优化方法,SPEC CPUINT 2006程序的效率提升了3.5%~14.4%,相比基于踪迹的优化,性能最大提升了5.1%。  相似文献   

14.
动态二进制翻译是广泛应用于虚拟机系统的一种二进制代码的翻译技术。动态二进制翻译由于拥有代码缓存、本地执行、代码块链接、动态热路径生成等优化技术的支持,有着很高的性能。CrossBit是一个多元多目标的动态二进制翻译系统,通过对CrossBit二进制翻译器的性能进行的研究,分析动态二进制翻译器性能提升中所必须解决的若干问题,并通过定量的分析总结了一些二进制翻译系统的在不同的配置和负载下系统优化手段的执行时策略。  相似文献   

15.
应用程序运行时典型行为特征分析的一种重要方法是SimPoint,但是为SimPoint生成基本块向量剖析(basic block vector profile,BBV profile)文件非常耗时.首先提出了一个利用动态二进制翻译技术生成BBVprofile的通用框架DBT-BBV,然后详细分析了几种降低开销的优化技术,最后基于DBT-BBV和提出的优化技术设计实现了一个高效的BBVProfile收集工具QPoint.利用SPEC2006测试程序集评估了所提出的优化技术和QPoint的性能和开销.与现有工具相比,QPoint有两个优势:①QPoint的性能高于现有工具,在普通PC机上最高速度为292MIPS,平均速度为109MIPS,BBV Profile收集的平均开销小于4%,在同类工具中最低;②QPoint支持众多体系结构平台,包括x86/x8664,ARM,POWER,SPARC,MIPS等,并且可跨指令集收集BBVProfile.结果显示,动态二进制翻译技术在应用程序行为特征分析加速方面具有非常好的效果.  相似文献   

16.
复杂指令集计算机体系结构向精简指令集计算机体系结构的动态二进制翻译过程中经常出现地址不对界的问题。本文以I386到Alpha平台的动态二进制翻译为例,研究了内存映射时的不对界和数据存取时的不对界问题,提出了一种改进的内存映射方法以及在中间表示层处理不对界地址访存问题的方案,有效地解决了此类问题。经实验验证,该方法正确并有较高效率。  相似文献   

17.
For implementing a dynamic binary translation system, traditional software-based solutions suffer from significant runtime overhead and are not suitable for extra complex optimization. This paper proposes using hardware–software collaboration techniques to create an high efficient dynamic binary translation system, CoDBT, which emulates several heterogeneous ISAs (Instruction Set Architectures) on a host processor without changing to the existing processor. We analyze the major performance bottlenecks via evaluating overhead of a pure software-solution DBT. Guidelines are provided for applying a suitable hardware–software partition process to CoDBT, as are algorithms for designing hardware-based binary translator and code cache management. An intermediate instruction set is introduced to make multi-source translation more practicable and scalable. Meantime, a novel runtime profiling strategy is integrated into the infrastructure to collect program hot spots information to supporting potential future optimizations. The advantages of using co-design as an implementation approach for DBT system are assessed by several SPEC benchmarks. Our results demonstrate that significant performance improvements can be achieved with appropriate hardware support choices. CoDBT could be an efficient and cost-effective solution for situations where the usual methods of performance acceleration for dynamic binary translation are inappropriate.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号