[发明专利]一种联合模拟系统及其工作方法无效
申请号: | 200910076473.9 | 申请日: | 2009-01-04 |
公开(公告)号: | CN101477474A | 公开(公告)日: | 2009-07-08 |
发明(设计)人: | 潘晓雷;陈明宇 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/38 |
代理公司: | 北京律诚同业知识产权代理有限公司 | 代理人: | 祁建国;梁 挥 |
地址: | 100080北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 联合 模拟 系统 及其 工作 方法 | ||
技术领域
本发明涉及模拟系统加速的技术领域,特别是涉及一种联合模拟系统及其工作方法。
背景技术
模拟器可以理解为″用纯软件的手段来仿真某一种硬件机能的机器″,它是研究新型高性能计算机体系结构的一种快速、有效的手段,是计算机体系结构研究者的重要工具。当构建一个新系统时,模拟器可以有效地测试和验证新系统的正确性并对其性能进行验证,可以大大降低开发的成本和时间。利用模拟器,可以使得硬件生产厂商在构建系统之前对硬件验证,还可以使得软件开发商在样机生产之前就能够进行软件开发,从而使软、硬件同时面世成为可能。另外,模拟器可以在程序运行时收集机器的运行信息,帮助分析系统的行为,从而进行相关的优化。由于模拟器的直观性和易用性,它在计算机组成和体系结构教学领域也有广泛的应用。
目前,软件模拟器的应用最为广泛,但软件模拟器的主要弱点就是执行速度较低,模拟的规模有限。Derek Chiou提出了软硬结合的模拟器FAST,用于实现一个运行速度快、模拟精度高的单节点模拟器。由于硬件的执行速度很快,所以相对于纯软件模拟器,这种混合模拟技术可以起到加速作用。
模拟器FAST将功能模拟和时序模拟分离开来,对于功能模拟部分使用软件模拟器QEMU来实现,而对于时序模拟部分使用现场可编程门阵列模拟器来实现。软件模拟器只提供指令集架构,确保程序可以正确运行。现场可编程门阵列模拟器模拟微结构,模拟分支预测、缓存状态等。功能级模拟器和时序级模拟器之间通过一个缓冲区来交互。功能级模拟器产生执行的踪迹信息,时序级模拟器从缓冲区中读出踪迹信息进行微结构模拟。可以看出,模拟器FAST的技术特点在于将一次指令模拟分为两个部分,重点关注的部分,即需要详细模拟的部分,利用硬件加速;非关注部分由软件处理。
相比于其它软件模拟器,模拟器FAST由于硬件的辅助可以更快地获取到详细的时序模拟信息。但是模拟器FAST定位于单机模拟的加速,而对于大规模并行应用程序来说,单机模拟的加速对整体的加速效果影响十分有限,随着模拟规模的扩展,单机模拟加速手段不具备可扩展性。
现有的模拟器对大规模并行应用模拟时会模拟应用程序各个进程在所有目标节点上运行行为的细节,当各个进程采用的工作集相近的时候,获取所有节点的模拟细节信息意义不大,因为这些信息反映的行为特征相近,具有冗余信息。另外,对大规模并行应用模拟时,模拟周期通常很长。而希望通过模拟获取到的信息种类又很多,例如访存行为特种、指令执行的时序特征等。一般来说,一种模拟器获取的信息种类越多其模拟速度越慢,所以仅采用一种模拟器很难既快速又详细的获取多种行为特征信息。
发明内容
本发明的目的在于提供一种联合模拟系统及其工作方法,能够加速模拟异构系统中的并行应用程序,达到既快速又详细的获取多种行为的特征信息的目的。
为实现本发明的目的而提供的一种联合模拟系统,包括:至少两台物理计算机、系统主控进程模块和进程库,其中:
至少一台物理计算机,包括宿主机系统模块和管理进程模块,其中:
所述宿主机系统模块,用于运行宿主机进程;
所述管理进程模块,用于管理其所在物理计算机上的宿主机进程;
至少一台物理计算机,包括一种或多种类型的模拟器,代理进程模块,以及目标机操作系统模块,其中:
所述模拟器,用于模拟目标机,并获取在所述目标机上运行的目标机进程的具体行为的特征信息;
所述代理进程模块,用于管理其所在物理计算机上的所述模拟器;
所述目标机操作系统模块,用于运行目标机进程;
系统主控进程模块,位于任意一台所述物理计算机上,用于将控制命令传递给所述代理进程模块和所述管理进程模块;
进程库,位于每一台所述物理计算机上,用于联合模拟系统的通信操作。
所述模拟器,包括一虚拟设备,所述虚拟设备使用虚拟设备所在模拟器的资源;所述虚拟设备所在物理计算机上的代理进程模块通过控制所述虚拟设备间接控制所述模拟器。
所述目标机操作系统模块包括:驱动程序模块和后台进程模块,其中:
所述驱动程序模块,用于在所述虚拟设备和目标机进程之间传递消息;
所述后台进程模块,用于控制该后台进程模块所在的目标机操作系统模块上运行的目标机进程。
所述目标机操作系统模块,根据所述模拟器的不同类型实现不同的目标机操作系统。
所述目标机操作系统模块,根据所述模拟器的不同类型实现相同的目标机操作系统。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910076473.9/2.html,转载请声明来源钻瓜专利网。