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

2.
二进制翻译中的库函数识别技术研究   总被引:5,自引:2,他引:5  
齐宁  付文  赵荣彩 《计算机应用》2006,26(4):983-985
体系结构的不断发展给软件开发者带来了巨大的风险,造成了新体系结构推广的困难,而二进制翻译技术使得可执行代码可自动迁移到新的体系结构。介绍了在开发一个静态二进制翻译系统(I2A翻译系统)中的库函数识别技术,并提出了解决库函数识别问题的新的方法。基于IA-64体系结构的调用约定及实例分析证明,该方法是一种简单实用的库函数识别方法,经I2A系统验证是有效的。  相似文献   

3.
体系结构设计经常要在代码兼容和结构创新之间进行折衷。保证代码兼容的体系结构难以引入创新性的体系结构技术,或者导致最终结构变得相当复杂。本文提出一种基于动态二进制翻译优化的可扩展处理器结构VISA。VISA在实现兼容的前提下拓展了体系结构设计的空间。模拟结果显示,VISA性能优于现有的动态二进制翻译优化框架,并有更高
高的性能潜力和扩展空间。  相似文献   

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

5.
随着信息技术的快速发展,涌现出各种新型处理器体系结构.新的体系结构出现为处理器多样化发展带来机遇的同时也提出了巨大挑战,需要兼容运行已有软件,确保较为丰富的软件生态群.但要在短期内从源码编译构建大量生态软件并非易事,二进制翻译作为一种直接从二进制层面迁移可执行代码技术,支持跨平台软件兼容运行,既扩大了软件生态群,又有效降低了应用程序与硬件之间的耦合度.近年来,二进制翻译技术研究取得了较大进展.为总结现有成果并分析存在的不足,本文首先介绍了二进制翻译技术的分类以及典型的二进制翻译系统,之后从指令翻译方法、关键问题研究、优化技术等方面分别进行分析总结,接着阐述了二进制翻译技术的核心应用领域,最后对二进制翻译技术的潜在研究方向进行展望.  相似文献   

6.
二进制翻译系统是一种基于软件的跨平台代码迁移系统,它将一种体系结构的二进制代码翻译成另一种体系结构的二进制代码.二进制翻译可以用于解决遗产代码的迁移问题,也可以实现不同硬件平台之间软件的通用.浮点栈的处理已成为以X86为源的二进制翻译的研究中的关键性问题之一,如何处理X86浮点栈问题直接关系到以X86为源的二进制翻译系统的性能.针对X86浮点寄存器栈的特征,提出了一种扩展虚拟栈(extending virtual stack)处理方案.它采用归一的方法,保证了每个基本块中的运算所涉及到的浮点寄存器可以直接映射到目标机器中的浮点寄存器,确保了翻译的效率,并利用翻译时的分析避免了在入口处不必要的判断;同时还给出了在基本块入口处判别一个基本块是否会出现浮点栈上溢和下溢的充分必要条件,为生成更加高效的代码提供了条件.实验表明,它能够在保证正确实现其功能的前提下,获得更好的执行效率.  相似文献   

7.
动态二进制翻译与优化技术推动了计算机体系结构的发展。以龙芯3A处理器为实现平台,在系统级模拟模式下,针对原二进制翻译器QEMU寄存器分配方案提出跨平台优化方法,同时引入热路径对动态二进制翻译过程中冗余代码进行优化。实验结果表明,经过优化后,在龙芯3A平台上通过QEMU翻译器运行Windows XP操作系统,其常用X86应用程序的运行速度得到可观提升。以上研究对基于龙芯平台的系统级跨平台应用程序的实用化具有深远的现实意义。  相似文献   

8.
Bitran二进制翻译实验系统的设计和实现   总被引:1,自引:0,他引:1  
对处理器速度的追求促使体系结构不断发展 ,但是软件的支持却不能与其匹配 ,造成新体系结构推广的困难 ,研究、解决代码迁移问题的二进制翻译方法应运而生 .介绍作者参与开发的一个静态二进制翻译实验系统的框架设计 ,并详细介绍框架中各个部分的实现方法 ,最后给出该翻译系统的实验数据和分析 .  相似文献   

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

10.
二进制翻译是不同体系结构之间软件移植的重要手段。体系结构和硬件环境上的差别,可以通过二进制翻译系统来弥补,在翻译过程中往往使用多条本地指令模拟一条目标指令,翻译代码规模随之显著增加,从而导致被翻译程序的执行效率下降。寄存器作为处理器和内存交换信息的重要存储部件,寄存器的模拟器方式对于程序的性能有着至关重要的影响。为了提高特定平台翻译后代码的执行效率,提出了在动态二进制翻译机制中使用全部寄存器直接映射方法,详细分析了二进制翻译中的上下文切换原理和寄存器访问范围,为异构平台之间寄存器直接映射提供方法指导。利用QEMU模拟器,把x86架构的8个通用寄存器全部的直接映射到MIPS架构的对应寄存器,在此基础上,进行大量的指令翻译规则的简化。实验数据表明,该方法可以有效简化指令翻译,降低代码膨胀率,使得SPEC CINT 2000测试程序在龙芯CPU上翻译后代码运行时间下降了30%-40%。  相似文献   

11.
在二进制翻译中引入TCG中间表示技术可以实现多目标平台之间的程序移植,同时可以更加方便地引入新型平台,解决新平台对主流平台的兼容性问题。然而由于原有的中间表示在翻译过程中影响了代码的关联度,生成的后端代码中存在较多冗余指令,影响翻译程序的执行效率。分析了指令优化可行性,针对条件跳转指令进行优化,通过指令预处理对中间表示进行改进,实现中间表示到后端代码生成由一对多翻译模式到多对多翻译模式的转变,采用指令归约技术,针对条件跳转指令的2种模式CMP-JX型与TEST-JX型,分别设计相应的优化翻译算法,并在开源二进制平台QEMU上实现。基于NPB-3.3和SPEC CPU 2006测试集进行了测试,与以前的翻译模式进行对比,优化后的代码膨胀率平均减少了14.62%,翻译程序运行速度提升了17.23%,验证了该优化方法的有效性。  相似文献   

12.
动态二进制翻译系统是根据程序的动态执行信息来将源机器上的可执行代码翻译成目标机器上的可执行代码.在翻译成中间表示的过程中会产生一些冗余的LOAD指令,为提高代码的执行效率,提出对这些LOAD指令进行冗余删除优化.该优化技术可以使优化效果超过其自身的开销,达到优化的目的.  相似文献   

13.
Noticeable performance improvement via ever-increasing transistors is gradually trapped into a predicament since software cannot logically and efficiently utilize hardware resource,such as multi-core resource.This is an inevitable problem in dynamic binary translation (DBT) system as well.Though special purpose hardware as aide tool,through some interfaces,provided by DBT enables the system to achieve higher performance,the limitation of it is significant,that is,it is impossible to be used widely by another one.To overcome this drawback,we focus on building compatible software architecture to acquire higher performance without platform dependence.In this paper,we propose a novel multithreaded architecture for DBT system through partitioning distinct function module,which is to adequately utilize multiprocessors resource.This new architecture devides couples the common DBT system (DBTs) working routine into dynamic translation,optimization,and translated code execution phases,and then ramifies them into different threads to enable them concurrently executed.In this new architecture,several efficient novel methods are presented to cope with intractable work that puzzles most researchers,such as communication mechanism,cache layout,and mutual exclusion between threads.Experimental results using SPECint 2000 indicate that this new architecture for DBT system can achieve higher performance - speed up the traditional DBT system by about average 10.75%,with better CPU utilization.  相似文献   

14.
卡内应用执行效率较低是制约Java Card发展的瓶颈。为此,研究Java Card虚拟机(JCVM)解释器的运行原理,针对其执行架构提出一种基于反馈的JCVM指令预调度方案。通过收集反馈应用的运行指令流统计信息,设计解释器加权控制流图(WCFG),利用基于WCFG的代码编排技术实现解释器的指令预调度。在目标体系架构中,将热点指令处理函数的布局按照反馈应用的统计信息进行重新编排。实验结果表明,该方案可使JCVM解释器的应用执行效率提高15.29%,并且不依赖额外系统资源,对基于解释器架构且资源受限的嵌入式设备性能优化具有指导意义。  相似文献   

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

16.
基于GCC的VLIW编译系统研究   总被引:1,自引:1,他引:0  
VLIW机器在单个机器周期中同时发射并执行多个的并行操作,从而获得较高的指令级并行度,这些操作之间的依赖分析和调度工作则被完全交给相应的编译器执行,因此VLIW的并行性能能否充分发挥取决于VLIW体系结构相关编译器的质量。GNU开发的GCC是被最广泛使用的编译系统之一,它具有多语言、多平台支持的能力和开放的结构,能够运用各种成熟的常规编译优化技术生成高效的代码。文章分析了VLIW及GCC的结构特点,提出了一种基于GCC的VLIW编译系统设计方案,利用GCC进行RTL中间代码一级的体系结构无关优化和少量体系结构相关优化,在汇编代码一级针对VLIW结构进行体系结构相关的优化,从而充分利用GCC的成熟编译技术快速开发高效的VLIW多语言编译系统。  相似文献   

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

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