学位论文 > 优秀研究生学位论文题录展示

动态二进制翻译中基于中间代码的优化研究

作 者: 姜玲燕
导 师: 步丰林
学 校: 上海交通大学
专 业: 计算机应用技术
关键词: 二进制翻译 中间代码 冗余删除 链接 寄存器分配
分类号: TP391.2
类 型: 硕士论文
年 份: 2008年
下 载: 62次
引 用: 3次
阅 读: 论文下载
 

内容摘要


如何提高动态二进制翻译系统的性能,是每个动态二进制翻译系统亟需解决的问题之一。基于中间代码层实现多源多目标的动态二进制翻译器,其中间代码层的性能至关重要。一是中间代码自身的效率。中间代码作为动态二进制翻译器中一层,一般以简单为设计的首要原则,每条指令只实现单一功能,导致中间代码膨胀严重,且带来一定程度的冗余信息。二是中间代码的优化机会。由于中间语言的平台无关性,对它进行的优化方法也是独立于平台的,所以可以构筑平台无关的、可重用的优化框架。为了改进中间代码的质量,提高二进制翻译器的性能,本文对二进制翻译中和中间语言相关的优化技术进行了研究。论文的主要工作包括:一、对基本块内的常用优化策略进行研究,针对CrossBit中间语言的组成和特性,提出了适合CrossBit中间语言的SSA形式化算法和冗余指令删除算法,大大减少了代码的膨胀率,使CrossBit系统的性能提升约10%~30%。二、借鉴现有链接技术,在CrossBit上实现了路径线性化算法,减少了系统的上下文切换,使CrossBit系统的性能提升约10%~30%。三、对动态优化技术进行研究,运用Profile实现热块的识别,并结合运用二级TCache以及VCache,为进一步进行动态优化奠定了基础。四、通过对后端寄存器分配算法的研究和比较,如全局寄存器分配、特殊寄存器分配、图染色法等,提出了适合CrossBit X86后端的基于next-use信息的寄存器分配策略。

全文目录


摘要  3-4
ABSTRACT  4-11
第一章 绪论  11-23
  1.1 研究背景  11-21
    1.1.1 虚拟机技术  12-14
    1.1.2 二进制翻译技术  14-15
    1.1.3 二进制翻译技术研究现状  15-18
    1.1.4 中间语言研究现状  18-21
  1.2 研究目标  21-22
  1.3 全文结构  22-23
第二章 CROSSBIT 及其中间语言  23-31
  2.1 CROSSBIT 系统概述  23-25
  2.2 CROSSBIT 的中间语言  25-27
    2.2.1 设计思想  25
    2.2.2 虚拟寄存器  25-26
    2.2.3 寻址模式  26
    2.2.4 访存策略  26
    2.2.5 颗粒度  26
    2.2.6 中间指令集  26-27
  2.3 CROSSBIT 中间语言应用举例  27-28
  2.4 CROSSBIT 性能评测  28-30
  2.5 本章小结  30-31
第三章 基于CROSSBIT 中间代码的静态优化  31-41
  3.1 SSA 形式化  31-34
  3.2 冗余指令删除  34-38
    3.2.1 算法描述  34-36
    3.2.2 实验数据  36-38
  3.3 死代码删除  38-40
    3.3.1 算法描述  38-39
    3.3.2 实验数据  39-40
  3.4 本章小结  40-41
第四章 基于CROSSBIT 中间代码的全局优化  41-51
  4.1 直接跳转(DIRECT BRANCHES)  41-43
    4.1.1 翻译块链接(Translation Linking)  41-43
    4.1.2 路径线性化(Trace Linearization)  43
  4.2 条件跳转(CONDITIONAL BRANCHES)  43-45
    4.2.1 回填技术(Back Patching)  44-45
  4.3 间接跳转(INDIRECT BRANCHES)  45-47
    4.3.1 分支预测(Software indirect jump prediction)  45-46
    4.3.2 Pin 的改进  46
    4.3.3 HDTrans 的改进  46-47
  4.4 RETURN 语句  47-48
    4.4.1 Return 缓存(Caching)  47
    4.4.2 克隆(Cloning)  47-48
  4.5 CROSSBIT 实现  48-50
  4.6 本章小结  50-51
第五章 基于CROSSBIT 中间代码的动态优化  51-59
  5.1 PROFILE 技术简介  51-52
  5.2 热块识别  52-53
  5.3 循环识别  53-54
  5.4 热路径识别  54
  5.5 “二级”TCACHE 的应用  54-55
  5.6 VCACHE 的应用  55-58
    5.6.1 VCache 工作原理  55-56
    5.6.2 Profile 统计表  56-57
    5.6.3 内存分配和组织方式  57
    5.6.4 实验数据  57-58
  5.7 本章小结  58-59
第六章 从中间到后端的寄存器分配  59-74
  6.1 常用寄存器分配算法  59-62
    6.1.1 特定寄存器分配  59-60
    6.1.2 全局寄存器分配  60
    6.1.3 图染色法  60-62
    6.1.4 基于存活期的寄存器分配  62
  6.2 CROSSBIT 中的寄存器分配实现  62-72
    6.2.1 最简单的寄存器分配  63-64
    6.2.2 一对一的寄存器分配  64-65
    6.2.3 全局寄存器分配  65-66
    6.2.4 基于next-use 信息的寄存器分配  66-68
    6.2.5 图染色法  68-72
  6.3 CROSSBIT 中各分配算法比较  72-73
  6.4 本章小结  73-74
第七章 结论  74-75
参考文献  75-78
致谢  78-80
参与课题及已发表论文  80-82

相似论文

  1. 搜索链接服务商著作权侵权问题研究,D923.41
  2. 面纸箱设计软件中Delphi动态链接库(DLL)的实现,TP311.52
  3. 深层链接引发的著作权侵权研究,D923.41
  4. 基于VB及MATLAB混合编程的数字实时全息再现系统,O438.1
  5. 搜索引擎侵权行为研究,D923
  6. 基于HLA的地面作战信息系统的视景仿真技术研究,TP391.9
  7. 网络影视作品定时播放侵权案例研究,D923.41
  8. 多源空间数据集成方法研究,P208
  9. 电子政务地理信息服务应用模型管理研究,P208
  10. 量子点偶联体对肿瘤细胞的诊断与治疗,R730.5
  11. 中西医链接治疗小儿肾病综合征临床疗效及生活质量评价,R726.9
  12. 链接异质时空的中性形态研究,J50-02
  13. 搜索链接服务引发的信息网络传播权侵权问题研究,D923.41
  14. 深度链接引发的著作权侵权行为研究,D923.41
  15. 基于视觉的行车道检测系统研究,TP274
  16. HWME中“广义专家”群体网络研讨过程的链接结构及其分析算法研究,TP393.09
  17. 基于链接结构分析的Web页面排序算法,TP393.092
  18. 银行LED屏远程信息发布系统的设计与实现,TP311.52
  19. 多源二进制代码一体化翻译关键技术研究,TP391.2
  20. 软硬协同动态二进制翻译系统设计与实现,TP391.2
  21. CPU/GPU异构多核虚拟执行环境框架的设计与实现,TP332

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机的应用 > 信息处理(信息加工) > 翻译机
© 2012 www.xueweilunwen.com