收藏本站
《复旦大学》 2006年
收藏 | 手机打开
二维码
手机客户端打开本文

动态翻译和优化若干关键技术研究

李剑慧  
【摘要】: 动态翻译技术是一种即时编译技术,它将针对源体系结构编译生成的源机器码动态翻译为可以在目的体系结构上运行的翻译码。动态优化技术是指在软件运行时获取动态信息并进行代码优化的技术。动态翻译及优化技术在动态二进制翻译系统、动态二进制优化系统和高级语言虚拟机中得到了广泛的应用和研究。这些技术对遗产代码移植、硬件设计、程序性能提高、网络应用、系统安全、并行编程模型等方面都有重要的意义。动态翻译及优化技术已经成为现代编译技术研究的热点之一。 本论文着重研究提高动态翻译和优化系统性能的一系列技术。首先,本文在深入探讨了动态二进制翻译系统中影响性能的主要因素的基础上,提出了注解信息制导的翻译及优化方法,来结合传统编译器和动态二进制翻译和优化系统以提高二进制代码在计算机系统上的运行性能。然后,本文针对源体系结构中的SIMD指令集,分析了翻译SIMD指令集的技术难点,并提出了翻译SIMD指令的优化翻译方法。再后,本文转向对动态翻译实用程序的研究,并针对模块化实用桌面程序中的“热”模块频繁装卸载问题提出了模块翻译复用方法,以降低反复翻译“热”模块引起的开销。最后,本文研究了高性能计算领域中Java程序内的数组边界检查问题,提出了利用自适应动态翻译方法来优化外提循环内的数组边界检查。 本文的贡献在于: 1.本文在比较分析动态二进制翻译生成的翻译码性能偏低原因的基础上,指出传统编译器在生成二进制代码的同时需要生成注解信息来指导该二进制代码的动态翻译及优化。本文给出了注解信息制导的动态二进制翻译及优化的整体框架,以及一种可扩展的注解信息参考格式。 2.本文提出的SIMD数据类型分析算法可以在Itanium体系结构上高效地模拟IA-32 SIMD指令。该算法利用三个Itanium浮点寄存器和两个Itanium整数寄存器来映射一个XMM寄存器,并有效地解决这些映射寄存器之间的数据同步问题。该算法可以被扩展使用于任何多映射寄存器之间数据同步的场合。 3.本文提出了针对SIMD指令翻译的一系列优化方法,以进一步提高SIMD代码的翻译质量。本文对SIMD指令优化翻译设计了三个算法:SIMD数据类型重分配算法,翻译时块间类型冲突消除算法及运行时块间类型冲突消除算法。它们通过消除块间类型冲突和降低翻译码块的执行代价来进一步提高翻译码的性能。 4.本文提出了一种针对可装载软件模块的翻译重用引擎和内存管理机制以提高实用桌面程序的整体运行性能。实用桌面程序的动态翻译开销远远高于CPU2000标准程序。一部分实用桌面程序的一次运行通常多次装载卸载软件模块,且被多次反复装载与卸载的软件模块通常集中在一部分“热”软件模块。对这些软件模块的反复翻译非常费时,同时反复的翻译会带来大量的内存浪费。针对可装载软件模块的翻译重用引擎和内存管理机制解决了这些问题。 5.本文利用自适应动态翻译方法解决了高性能计算中Java程序内的数组边界检查的循环外提问题。在高性能计算领域程序通常使用大量数组进行计算,而在Java语言中数组操作会引起数组边界检查。消除数组边界检查的一种有效手段为边界检查循环外提。现有的边界检查循环外提主要采用多版本方法:它将迭代空间划分为安全和非安全区域,然后在安全区域执行完全优化的代码而非安全区域执行非优化的代码。本文提出的自适应循环翻译算法从动态优化的角度更优化地解决这些问题。首先,在第一次编译循环时该算法仅产生优化版本,直到运行时边界检查失败后才生成非安全区的版本。其次,在产生非安全区的版本时,它利用动态信息使得区域划分和翻译码生成更加优化。
【学位授予单位】:复旦大学
【学位级别】:博士
【学位授予年份】:2006
【分类号】:TP391.2

【引证文献】
中国期刊全文数据库 前1条
1 夏欢庆;;C语言在计算机中的应用[J];电脑知识与技术;2011年23期
中国博士学位论文全文数据库 前2条
1 陈微;基于动态二进制翻译的协同设计虚拟机关键技术研究[D];国防科学技术大学;2010年
2 姜海涛;内核级二进制翻译系统设计及性能优化[D];中国科学技术大学;2013年
【同被引文献】
中国期刊全文数据库 前10条
1 胡伟武;李国杰;;纳米级工艺对微处理器设计的挑战[J];中国集成电路;2008年07期
2 马湘宁,武成岗,唐锋,冯晓兵,张兆庆;二进制翻译中的标志位优化技术[J];计算机研究与发展;2005年02期
3 胡伟武;张福新;李祖松;;龙芯2号处理器设计和性能分析[J];计算机研究与发展;2006年06期
4 李剑慧;马湘宁;朱传琪;;动态二进制翻译与优化技术研究[J];计算机研究与发展;2007年01期
5 谢海斌;武成岗;崔慧敏;李晶;;二进制翻译中的X86浮点栈处理[J];计算机研究与发展;2007年11期
6 陈龙;武成岗;谢海斌;崔慧敏;张兆庆;;二进制翻译中解析多目标分支语句的图匹配方法[J];计算机研究与发展;2008年10期
7 王焕东;高翔;陈云霁;胡伟武;;龙芯3号互联系统的设计与实现[J];计算机研究与发展;2008年12期
8 白童心,冯晓兵,武成岗,张兆庆;优化动态二进制翻译器DigitalBridge[J];计算机工程;2005年10期
9 蔡嵩松;刘奇;王剑;刘金刚;;基于龙芯处理器的二进制翻译器优化[J];计算机工程;2009年07期
10 胡伟武,唐志敏;龙芯1号处理器结构设计[J];计算机学报;2003年04期
中国重要会议论文全文数据库 前1条
1 廖银;孙广中;姜海涛;靳国杰;陈国良;;二进制翻译器中间接分支目标地址查找方法[A];第四届中国科学院博士后学术年会暨工业经济与可持续发展学术会议论文集[C];2012年
中国重要报纸全文数据库 前1条
1 江苏 周坚;[N];电子报;2000年
中国博士学位论文全文数据库 前6条
1 王德康;分布式先进控制软件技术与应用[D];浙江大学;2001年
2 杜贵然;多路径Trace处理器[D];中国人民解放军国防科学技术大学;2001年
3 曹宏嘉;面向微处理器设计的动态二进制翻译技术研究[D];国防科学技术大学;2005年
4 唐锋;动态二进制翻译优化研究[D];中国科学院研究生院(计算技术研究所);2006年
5 马湘宁;二进制翻译关键技术研究[D];中国科学院研究生院(计算技术研究所);2004年
6 王蕾;异步嵌入式微处理器设计与分析关键技术研究[D];国防科学技术大学;2006年
【二级引证文献】
中国期刊全文数据库 前5条
1 李俊;;C语言中计算机原理的应用[J];计算机光盘软件与应用;2012年10期
2 王立新;;浅析计算机原理中C语言的应用[J];计算机光盘软件与应用;2012年16期
3 樊霆;;计算机系统程序设计的平台基础分析[J];计算机光盘软件与应用;2013年20期
4 孙胜杰;苗克坚;曹晓洁;;基于PowerPC的软件仿真调试系统的设计与实验[J];科学技术与工程;2011年31期
5 陈慧超;蒋烈辉;刘强;娄睿;;X86系统仿真中软硬协同标志位处理优化方法[J];计算机工程与设计;2014年07期
中国硕士学位论文全文数据库 前3条
1 徐帆;软硬协同动态二进制翻译系统设计与实现[D];国防科学技术大学;2010年
2 陈海峰;协同设计X86仿真指令集映射技术研究[D];解放军信息工程大学;2012年
3 张思纯;协同式X86系统仿真中地址映射与指令译码技术研究[D];解放军信息工程大学;2013年
【相似文献】
中国期刊全文数据库 前10条
1 柯向东,郭剑昆,赵振西;编译Prolog抽象指令集探讨[J];小型微型计算机系统;1988年05期
2 袁丁;‘程序翻译’有了开放的源程序——参与试验人员可以无偿地学习并试验独立于硬件的指令集结构[J];今日电子;2001年05期
3 于洪洲;程建;;51系列单片机软件抗干扰设计[J];集成电路通讯;2007年02期
4 田锐;田晏嘉;;基于自顶向下方法的CPU的VerilogHDL描述[J];内蒙古科技与经济;2008年16期
5 王刚;;51单片机应用系统软件抗干扰初探[J];内蒙古科技与经济;2009年07期
6 袁红照;MIS系统中SMS功能的实现[J];天中学刊;2004年05期
7 ;晶心推出实现完整Audio指令集的AndesCore N1033A-S[J];电信科学;2011年05期
8 吴曦,蒋烈辉;基于决策理论的指令集识别技术研究[J];计算机工程与设计;2005年05期
9 张伟;686-3D之争[J];电脑爱好者;1998年09期
10 ;AMD-K6-Ⅲ处理器[J];个人电脑;1999年04期
中国重要会议论文全文数据库 前10条
1 邹慧兰;程亚奇;兰西柱;晋刚;;基于StarCore SC140实现通信中的viterbi解码[A];第九届全国青年通信学术会议论文集[C];2004年
2 辛乃军;陈旭灿;孙海燕;阳柳;罗杰;淡孝强;王霁;;基于GCC的高性能DSP Matrix向量指令集扩展[A];第十五届计算机工程与工艺年会暨第一届微处理器技术论坛论文集(B辑)[C];2011年
3 王庆林;邢座程;闵银皮;赵齐;王宏燕;;一款基于Microblaze指令集的64位RISC处理器设计[A];第十五届计算机工程与工艺年会暨第一届微处理器技术论坛论文集(A辑)[C];2011年
4 方红霞;李华伟;李晓维;;基于指令集的处理器时延测试产生方法[A];第三届中国测试学术会议论文集[C];2004年
5 万志涛;;MIPS指令集多核处理器信令处理能力评估[A];中国通信学会信息通信网络技术委员会2011年年会论文集(上册)[C];2011年
6 张奕;罗惠琼;;一种32位RISC处理器IP核设计[A];2006中国西部青年通信学术会议论文集[C];2006年
7 李勇;刘胜;甄体智;;C64x+DSP内核分析及其性能评价[A];第15届全国信息存储技术学术会议论文集[C];2008年
8 陈林博;江建慧;张丹青;;基于多版本冗余进程的容侵系统[A];第十四届全国容错计算学术会议(CFTC'2011)论文集[C];2011年
9 朱佳辉;张健;侯立刚;吴淞波;吴武臣;;基于FPGA的嵌入式32位RISC微处理器的设计和应用实现[A];第七届北京青年科技论文评选获奖论文集[C];2003年
10 付忠传;杨华;崔刚;陈剑龙;;HOPE-Ⅰ模拟器的设计与实现[A];第三届中国测试学术会议论文集[C];2004年
中国重要报纸全文数据库 前10条
1 魏俊岭;CPU指令集大荟萃[N];电脑报;2001年
2 土匀;了解“爱妻”[N];电脑报;2008年
3 本报记者 霍光;走出异构计算的认识误区[N];中国计算机报;2009年
4 本报记者 李好宇 张晓明;谁敢说龙芯不是国货[N];电脑报;2009年
5 上海硅知识产权交易中心 王萍萍 复旦大学微电子学院 郑剑钦;CPU新技术不断涌现 专利竞争渐成焦点[N];中国电子报;2009年
6 杨国强 王如晨 蔡越;龙芯“八年抗战” 产业化仍要持久战[N];第一财经日报;2009年
7 本报记者胡永生;从龙芯到一条龙[N];科技日报;2002年
8 记者 张群英;Power.org翻开中国牌[N];网络世界;2006年
9 本报记者 刘丽丽 韩勖;获MIPS授权龙芯即将爆发[N];计算机世界;2009年
10 王寒辉;透视 CPU 的性能[N];中国电脑教育报;2000年
中国博士学位论文全文数据库 前10条
1 王烁;字符串模式匹配的硬件加速研究[D];中国科学技术大学;2008年
2 姚英彪;高性能嵌入式RISC微处理器核设计研究[D];浙江大学;2006年
3 周莉;RISC/DSP处理器的结构、微结构设计研究[D];浙江大学;2004年
4 李侠;低功耗嵌入式微处理器的VLSI设计研究[D];复旦大学;2004年
5 阳晔;面向嵌入式处理器的代码压缩研究[D];浙江大学;2007年
6 蔡卫光;媒体数字信号处理器IP核微结构优化研究[D];浙江大学;2011年
7 杨君;专用指令集处理器(ASIP)体系结构设计研究[D];中国科学技术大学;2006年
8 蒋烈辉;固件代码逆向分析关键技术研究[D];解放军信息工程大学;2007年
9 王莉;类数据流驱动的分片式处理器上的编译及优化技术[D];中国科学技术大学;2009年
10 黎铁军;嵌入式流媒体处理器体系结构技术研究[D];国防科学技术大学;2005年
中国硕士学位论文全文数据库 前10条
1 陈前;加密专用处理器指令集设计[D];哈尔滨工业大学;2011年
2 金鹰翰;基于显式通信指令集的分片式处理器模拟器开发[D];哈尔滨工业大学;2010年
3 张帅;一种兼容MCS-51指令集的高速MCU的设计及实现[D];哈尔滨工业大学;2012年
4 李闻博;FT-Matrix处理器指令集与指令派发设计[D];国防科学技术大学;2010年
5 尤子威;一种兼容MCS-51指令集的单片机内核的设计与验证[D];西安电子科技大学;2014年
6 王学德;兼容PIC16F62X指令集的8位MCU IP核的研究与设计[D];西安电子科技大学;2012年
7 易海峰;复杂指令集快速译码设计[D];西北工业大学;2005年
8 李双飞;适用于MIMO-OFDM的ASIP的设计与实现[D];西安电子科技大学;2010年
9 陈海峰;协同设计X86仿真指令集映射技术研究[D];解放军信息工程大学;2012年
10 高伦;基于AVX指令集的螺旋锥束CT图像重建研究[D];哈尔滨工业大学;2013年
 快捷付款方式  订购知网充值卡  订购热线  帮助中心
  • 400-819-9993
  • 010-62791813
  • 010-62985026