首页> 中文学位 >基于龙芯3A处理器的跨平台二进制翻译器QEMU的优化研究
【6h】

基于龙芯3A处理器的跨平台二进制翻译器QEMU的优化研究

代理获取

目录

声明

摘要

第1章 绪论

1.1 研究背景

1.1.1 二进制翻译技术概述

1.1.2 二进制翻译方法分类

1.1.3 动态二进制翻译系统的基本框架

1.2 研究意义

1.3 国内外研究现状

1.3.1 二进制翻译系统研究现状

1.3.2 基于龙芯的虚拟化研究现状

1.4 本文的主要研究工作及结构安排

第2章 QEMU虚拟机及龙芯处理器简介

2.1 动态二进制翻译器QEMU

2.1.1 QEMU概述

2.1.2 QEMU翻译系统结构框架

2.1.3 QEMU的两种工作模式

2.2 QEMU动态翻译引擎-TCG

2.2.1 TCG简介及相关概念

2.2.2 TCG中间代码块翻译流程

2.2.3 TCG中间代码到主机代码翻译流程

2.3 龙芯3A处理器特点

2.4 本章小结

第3章 QEMU的热路径优化

3.1 引言

3.2 QEMU的基本块/翻译块组织

3.2.1 翻译块TB的数据结构

3.2.2 翻译块大小

3.2.3 翻译块的索引及创建

3.2.4 翻译块的执行

3.2.5 翻译块的跳转

3.3 热路径识别的常用算法

3.3.1 基于基本块的热路径识别

3.3.2 基于边的热路径识别

3.3.3 基于路径的热路径识别

3.3.4 NET动态热路径识别算法

3.3.5 几种算法的比较

3.4 本文采用的优化算法

3.5 对热路径进行优化

3.6 本章小结

第4章 寄存器分配优化

4.1 引言

4.2 寄存器分配优化理论基础

4.2.1 X86处理器通用寄存器特性

4.2.2 龙芯处理器通用寄存器特性

4.3 优化方案设计与实现

4.3.1 QEMU现有寄存器分配方案

4.3.2 寄存器分配方案优化设计

4.4 本章小结

第5章 优化性能评测分析

5.1 运行Windows上常用应用程序性能评测

5.1.1 测试环境及实验控制

5.1.2 测试结果

5.2 使用SuperPi测试CPU运算能力

5.3 使用nbench测试集进行性能评测

5.3 性能提升分析

第6章 总结与研究展望

6.1 全文总结

6.2 研究展望

参考文献

致谢

在读期间发表的学术论文与取得的其他研究成果

展开▼

摘要

龙芯处理器作为我国自主研发的通用CPU,它的发展具有重大意义。龙芯处理器采用类MIPS架构。而目前基于X86架构的处理器在应用中被大量使用,这是因为无论在服务器领域还是在商业软件中,大量应用都是采用X86架构。因此实现与X86架构的兼容就成为龙芯平台的重要任务。二进制翻译技术使得龙芯对X86兼容变为可能。目前基于龙芯的二进制翻译研究多是基于用户级模拟下的应用移植和优化,而本文基于龙芯3A平台,从系统级模拟着手,通过运行X86操作系统,对其上常用应用程序进行针对性优化研究。
   本文以龙芯3A处理器为实现平台,以QEMU作为跨平台动态二进制翻译系统。在深入了解QEMU的特点及翻译运行机理的基础上,结合程序代码的局部性原理,指出程序执行时代码的热路径部分是很适合进行优化的区域。在对常见的几种热路径识别算法进行分析比较后,针对QEMU的特性提出了在本文中实现的算法。QEMU利用本算法能够较好的识别出程序执行的热路径并进行优化。同时,通过对X86和龙芯处理器通用寄存器特点的分析,论证了在源机器为X86体系结构,目标机为类MIPS体系结构的情况下进行寄存器分配优化的可行性。接下来结合QEMU系统级模拟工作模式特点,通过在龙芯3A平台上对QEMU二进制翻译器上Windows XP操作系统常用应用程序的运行时寄存器的访问情况进行统计分析,针对龙芯3A平台,对QEMU现有寄存器分配方案进行优化,从而达到降低系统级模拟时的访存频率的目的,提高模拟效率。最后,通过在龙芯3A平台上运行Windows XP操作系统,对其上常用应用程序的运行效率进行优化前后的量化对比,验证了本文的优化方法是行而有效的。而使用nbench测试集进行性能评测的结果,则验证了本文的优化方法对于更广范围的X86架构下应用程序的效率提升也是有效的。这对基于龙芯平台的系统级跨平台应用程序的实用化具有深远的现实意义。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号