当前位置:主页 > 科技论文 > 计算机论文 >

面向高可伸缩与可移植的众核全系统模拟器的设计与实现

发布时间:2020-06-27 00:32
【摘要】:全系统模拟器可以用于指定模拟某个硬件平台,因此其被广泛用于软件开发、错误判定、内存访问情况的查看和分析等用途。 多核技术的发展为全系统模拟器技术带来了众多机遇同时也带来了很多挑战。一方面,多核平台拥有丰富的物理计算资源可供全系统模拟使用并提高自身模拟的性能。另一方面,随着多核平台上处理器数目快速增长,要求全系统模拟器可以高效的模拟大量核的多核平台并可以模拟运行处理大数据量的并行程序。与此同时,全系统模拟器必须有能力真实的模拟并行程序在多核平台上的并行运行的行为从而才有可能暴露并行程序自身存在的问题,如并行错误中的数据竞争问题。然而,由于当今主流的全系统模拟器都在利用一个物理处理器,以轮训的方式模拟多核计算平台,因此,他不但不能够利用多核平台上丰富的物理计算资源与此同时还将在性能上非常差的可伸缩性。与此同时,在可靠性方面,由于虚拟核之间经常以较粗粒度进行调度,因此非常容易隐藏并行程序本身由于运行由于数据竞争而产生的随机错误,进而严重约束了对模拟软件运行时行为的分析。然而我们知道开发一个全系统模拟器,由于要考虑到系统相关的所有层面,因此需要大量地人力并花费大量地时间。而全系统模拟器较普通的用户态程序模拟器更为复杂,其原因在于要考虑全系统的所有层面,如系统指令集、地址翻译、运行的特权级、中断以及外设的模拟。而不同体系结构指令集的不同也给构建一个可移植的全系统模拟器带来了更大的困难。 本文提出了一个全新构建并行全系统模拟器的方法。我们发现对于现有的多核平台,核于核之间关系以及核与外设之间相互独立,他们之间通过有着标准规范的总线接口进行通讯。例如,每个处理器都拥有自己的控制单元、寄存器以及缓存,处理器之间通过核间中断进行通讯。这样的组织结构允许我们基于现有的并行模拟器构建一个有效地并行模拟框架,而不是简单的将其并行化,从而降低构建并行模拟器的复杂性。我们通过集成多个主流的串行模拟器来构建一个并行模拟器,每一个串行模拟器都用来模拟一个虚拟处理器并以一个线程的形式运行。我们还提供了一个简单有效的协议层负责线程的调度、通讯和同步模拟。我们认为这种简单的构建方法可以使得并行模拟器具有很好的可伸缩性、可靠性、可移植性以及动态负载均衡的能力。通过引进轻量级事务技术、非阻塞队列技术以及针对多核模拟的调度算法,基于已有的主流串行模拟器,我们构建了高可伸缩性和可移植性的并行模拟器。 我们基于QEMU实现了一个并行模拟器原型COREMU,该原型系统中QEMU的代码修改行数仅仅在2500行左右。该原型系统支持对x64和ARM两不同的体系结构的并行模拟。对于x64,最多可以并行模拟255个虚拟核。对于ARM,最多可以对4个虚拟核进行模拟。与此同时,为了帮助程序员更加有效的对程序进行开发和分析,COREMU还集成了观察点和内存访问序列收集的机制。对于性能评测,我们使用SPECINT-2000基准评测程序进行评测,其结果显示对于单核模拟COREMU仅仅有1%不到的性能开销。而对于多和模拟,COREMU较QEMU具有更好的可伸缩性。我们使用了多个基准评测程序对其模拟多核时性能的多个方面进行评测,结果显示,当COREMU模拟的虚拟核数目不大于物理核数目时,其具有非常好的可伸缩性。当其模拟的虚拟核数目大于物理核数目时,其性能的下降仍然在可接受的范围内。与此同时,对于所有测试程序,COREMU都可以模拟到255个虚拟处理器而当QEMU模拟超过16个处理器时,测试程序模拟运行时间便会超时。当COREMU在4*4的多核计算平台上模拟16个虚拟处理器时,和QEMU相比,它达到了20-67倍的提速。
【学位授予单位】:复旦大学
【学位级别】:硕士
【学位授予年份】:2011
【分类号】:TP302.1
【图文】:

架构图,程序模拟器,用户态,架构


图3.用户态程序模拟器架构示,模拟运行的程序与模拟器将作为用户态的一个普通程序,在间内被运行。模拟运行的程序所调用的系统调用将被模拟器直接影作系统的系统调用。与全系统模拟器相比,用户态程序的模拟器程序,因此收集的数据更加有针对性。然而由于没有模拟整个软以模拟器无法收集和分析程序运行时系统软件对上层应用的影响表明,程序在请求系统调用进行上下文切换的时候会引起大量的问失败[19]。而这样的行为使用用户态程序的模拟器是无法捕捉统模拟器拟器主要是模拟整个硬件平台的所有功能单元,以达到帮助新平发、调试和分析的功能。与用户态程序模拟器相比,全系统模拟系统的架构,除了处理器功能单元以外,还需要模拟内存管理单元

架构图,全系统,模拟器,架构


上系统软件开发、调试和分析的功能。与用户态程序模拟器相比,全系统模拟器为了模拟整个系统的架构,除了处理器功能单元以外,还需要模拟内存管理单元、存储器共控制单元、中断控制单元以及网卡等其他外围设备。其结构如图4所示。被模拟运行的系统并不知道下面模拟器的存在。他认为自己运行在一台真实的物理计算平台上。而对于宿主系统,在他看来,模拟器程序不过是一个简单的用户态程序。模拟器使用操作系统提供的己有的服务来模拟整个计算平台,他将自身虚拟空间的一部分划分给模拟的平台,来模拟目标计算平台的内存单元。全系统模拟器在模拟所有功能单元的同时,还需要维护一些中间状态信息,在下面一节中将具体讲述其具体实现细节。第9页共68页

【相似文献】

相关期刊论文 前10条

1 ;浪潮清华联合推出“地球系统模拟器”国内最快超算[J];中国现代教育装备;2011年08期

2 刘朝霞;900MHz频段GSM手机的发射功率及其测试方法概述[J];电子质量;2001年02期

3 蒋晓峰;施勇;薛质;;针对虚拟机查毒的规避方法研究[J];信息安全与通信保密;2011年02期

4 曹根宝,孙玉华,李华闽,刘娜佳;CFSL-655系统实现中的表格结构[J];计算机工程;1982年02期

5 忽敏;;病毒检测虚拟机技术与实现[J];西铁科技;2004年03期

6 ;浪潮清华联合推出“地球系统模拟器”国内最快超算[J];中国教育网络;2011年05期

7 孙战军;;浪潮百万亿次超算用于中国首个地球系统模拟器工程[J];中国教育信息化;2011年09期

8 王柏年;;微波系统设计者用的全系统模拟器[J];无线电工程;1989年05期

9 李勇华,毋国庆,舒风笛,熊子阳;组件思想在模拟执行的需求检查方法中的运用[J];计算机工程与应用;2003年03期

10 来志京;果敢;韩玲;孙靖;;TD-SCDMA终端无线资源管理(RRM)测试初探[J];电信网技术;2006年06期

相关会议论文 前10条

1 赵伟;;GMDSS模拟器网络协议的设计[A];中国航海学会通信导航学术年会(1992)论文集[C];1992年

2 马俊;李根;卢凯;;基于模拟器的缓冲区溢出动态检测方法[A];全国第19届计算机技术与应用(CACIS)学术会议论文集(下册)[C];2008年

3 赵天磊;唐遇星;齐树波;付桂涛;贾小敏;张民选;;一种高准确率的应用程序行为分析方法[A];第十五届计算机工程与工艺年会暨第一届微处理器技术论坛论文集(B辑)[C];2011年

4 曾慧清;黄林鹏;陈俊清;;基于ASM的普适环境下的服务动态组合[A];2010年全国开放式分布与并行计算机学术会议论文集[C];2010年

5 林锦滨;张晓菲;刘晖;;符号执行技术研究[A];全国计算机安全学术交流会论文集(第二十四卷)[C];2009年

6 张萧;祝明发;肖利民;;分布式I/O资源虚拟化技术的研究[A];2008年全国开放式分布与并行计算机学术会议论文集(下册)[C];2008年

7 张良;李耀辉;张虎强;;应用澳大利亚CABLE模式对于中国陆面过程特征的模拟[A];中国气象学会2008年年会干旱与减灾——第六届干旱气候变化与减灾学术研讨会分会场论文集[C];2008年

8 张博刚;张威;王斌;陈月宁;;测试驱动过程模型在辅助决策系统开发中的应用[A];第六届中国测试学术会议论文集[C];2010年

9 陈平;丁树良;林海菁;周婕;;等级反应模型下计算机化自适应测验选题策略[A];全国教育与心理统计测量学术年会论文摘要集[C];2006年

10 蔡涛;鞠时光;牛德姣;;开放式安全存储区域网模拟平台[A];第15届全国信息存储技术学术会议论文集[C];2008年

相关重要报纸文章 前10条

1 本报记者 刘燕;浪潮清华联合推出“地球系统模拟器”[N];科技日报;2011年

2 记者 赵永新;我国启动地球系统模拟器建设[N];人民日报;2011年

3 罗德与施瓦茨中国有限公司;测试灵药:力保LTE产业发展[N];通信产业报;2011年

4 ;关于发布《公开发行证券的公司信息披露规范问答第7号——新旧会计准则过渡期间比较财务会计信息的编制和披露》的通知[N];中国证券报;2007年

5 谢文砚;Intel VT技术解析[N];中国计算机报;2008年

6 本报记者 宋丽娜;打破安全“金三角”[N];网络世界;2002年

7 李秀琴;美军虐囚又出新丑闻[N];人民法院报;2005年

8 本报记者  初一 何军 周

本文编号:2731098


资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2731098.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户c3b89***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com