基于集群系统的计算机体系结构方案并行模拟优选方法技术方案

技术编号:2912305 阅读:372 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种基于集群系统的计算机体系结构方案并行模拟优选方法,目的是提供一种计算机体系结构设计方案并行模拟优选的方法。技术方案是先构建具备远程命令执行环境的由主控节点和模拟节点组成的集群并行计算机系统,主控节点上安装有全局配置程序、模拟配置文件生成程序、任务调度程序和结果分析程序。全局配置程序进行全局性的配置设置;模拟配置文件生成程序生成所有的模拟配置文件;任务调度程序将模拟评估任务分配给各个节点,控制各个模拟节点并行地进行模拟评估;结果分析程序搜索模拟节点发来的模拟结果文件,进行统计,筛选出最优配置参数值,输出报告。采用本发明专利技术既能减少评价优选的时间,又能提高选择的准确度。

【技术实现步骤摘要】

本专利技术涉及计算机系统模拟方法,特别是以集群并行计算机系统为宿主机,对计算机体系结构的不同配置方案进行并行模拟评估,以便对计算机体系结构设计方案进行优选的方法。
技术介绍
在计算机系统的研制过程中,通常需要对计算机体系结构的各种配置情况进行评估,使得在技术与成本限制下获得最优的设计方案。例如,片上多处理器系统(CMP)的片上处理器核的数目及互连结构、处理器上高速缓存(Cache)大小、块大小和相联性等重要参数都有一定的可能范围,参数取值不同可能导致性能的很大变化,需要综合考虑这些参数的值,才能获得好的设计结果。又例如,计算机系统内部互连网络的拓扑结构可有多种方案,不同方案在性能特征方面存在很大差别。随着计算机体系结构的迅速发展,影响性能的因素越来越多,设计空间(全部配置选项的所有可能的组合情况)日益增大。对体系结构设计人员来说,如何评估巨大的设计空间中的各个配置方案,获得最优的选择是重要问题。计算机体系结构模拟软件(以下简称模拟器)在上述计算机体系结构设计过程中具有广泛用途。模拟器一般具有可配置、可复用的能力,可以对所模拟的计算机系统的各项体系结构参数或方案选项进行配置,在现有的计算机(宿主机)上模拟运行真实基准测试程序或自动生成的工作负载(以下统称为Benchmark程序),获得目标系统采用该配置方案时的性能数据,为体系结构设计决策提供参考。基于模拟器对计算机体系结构进行评估已成为高性能计算机系统或关键器件研制周期中的重要环节,设计人员广泛使用模拟器来评价体系结构创新或改进的效果。例如,IBM公司在其PowerPC和Cell处理器研发中一直采用Mambo模拟器进行验证和评估,在其BlueGene系列超级计算机研制中采用BigSimulator来研究超级并行计算机系统的性能特性。AMD公司在其微处理器研制中也基于SimNow模拟器进行验证。Intel公司在内部使用一些专门的模拟器如XTREM、Simics等进行设计验证。国内中科院计算所在基于龙芯CPU的片上多核体系结构研究中也基于SimOS-Goodson来进行测试验证(高翔等,基于龙芯CPU的多核全系统模拟器-->SimOS-Goodson,软件学报,2007)。一些学者指出,为保持计算机系统的创新研究,模拟技术的能力必须实现新的跨越,为此他们专门向美国NSF呼吁增加对模拟器技术的支持(Kevin Skadron等,Challenges in Computer Architecture Evaluation,IEEE Computer,2003)。目前已有很多模拟器软件系统,如SimpleScalar(威斯康星大学)、SimOS(斯坦福大学)、Wattch(哈佛大学)、PROTEUS(麻省理工大学)、WWT II(威斯康辛大学)、MPI-SIM(加州大学洛杉矶分校)、BigSimulator(伊利诺伊大学香槟分校)、Simics(瑞典Virtutech公司)、Mambo(IBM公司)、SimNow(AMD公司)、XTREM(普林斯顿大学和Intel公司)、GEMS(威斯康辛大学)、RSIM(莱斯大学、伊利诺伊大学等)、M5(密歇根大学)、LSE(普林斯顿大学)等。基于模拟器进行体系结构设计空间探索的方法通常是由设计人员手工设定所模拟的目标系统各个参数的具体取值和技术方案的具体选项(以下称为模拟配置),然后在宿主计算机上基于模拟器模拟运行Benchmark程序,获得该特定配置的性能数据(例如Benchmark程序在目标计算机系统上的执行时间,或者网络通信的带宽,或者是系统吞吐率)。为对设计空间内的多个候选配置进行评价,需要对每个候选配置逐个进行模拟评估。由于模拟器是采用软件的方法来模拟硬件的行为,其运行Benchmark程序的时间很长,通常比在真实目标机上运行相同Benchmark程序的时间大几个数量级,因此这种方法的时间开销很大。例如,文献(张福新等,基于SimpleScalar的龙芯CPU模拟器Sim-Godson,计算机学报,2007)报告了一种龙芯CPU的串行模拟器,在3.0GHz的Pentium4微机上,模拟速度约为500K条指令每秒。而常用的CPU评测Benchmark程序集SPEC CPU2000中的多数程序在使用标准Ref输入集时都具有数千亿条指令,例如Mgrid程序约有640000000K条指令。据此推算,采用Sim-Godson模拟器,在一台3.0GHz的Pentium4微机上对龙芯CPU的一种配置进行串行模拟,运行完整Mgrid程序所需时间约为14.8天;如果针对龙芯CPU的多种配置进行模拟优选,运行SPEC CPU2000中全部26个程序所需时间将会长达数年。由于串行模拟的时间太长,通常只能对设计空间内的少数几种配置情况进行模拟评估,而这极有可能遗漏最优的配置。还有的方法不对完整Benchmark程序进行模拟,而对Benchmark程序进行缩减,或者对Benchmark程序进行采样模拟,例如文献(Michael Van Biesbrouck等,Efficient SamplingStartup for Sampled Processor Simulation,2005 International Conference on HighPerformance Embedded Architectures & Compilers,2005)报告了一种处理器模拟的Benchmark采样方法,但其测试结果表明,没有进行预热(Warmup)的采样模拟方法得-->到的21个SPEC CPU2000程序的每指令时钟周期数(Cycle Per Instruction,CPI)的误差平均为16%到24%,对有的程序误差可达40%以上,使用固定预热大小的采样模拟方法对21个程序的平均误差在4%,但对部分程序的误差仍然达到17%。基于误差这么明显的模拟结果进行体系结构设计方案优选,同样有可能得不到最优的配置。且设计者手工进行机器配置参数与模拟选项的设置、模拟数据的收集与比较,不仅使用不方便,而且手工操作还容易出错。这是影响模拟器在体系结构设计中的应用效果的主要问题。并行计算机系统相对于单处理器系统具有更强的计算能力与更大的存储容量,如果能够利用并行计算机系统来做模拟器软件的宿主机平台,可以有效地加速体系结构模拟评估的过程。但是,存在以下困难:(1)目前绝大多数模拟器软件是串行程序,一个模拟器实例(指模拟器的运行实体,下同)只能运行于单个处理器(核)上,无法利用并行计算机的多个处理器(核)进行并行模拟。而使用串行模拟器在单处理器系统上进行模拟的时间开销是非常大的。(2)当前部分模拟器软件(如GEMS和M5)具有多线程并行版本,一个模拟器实例能够使用片上多处理器系统的多个核,或者是对称多处理器(SMP)系统的多个处理器。例如文献(Kun Wang等,Parallelization of IBM Mambo SystemSimulator in functional modes,ACM SIGOPS Operating Systems Review,2008)报告了IBM中国研究中心开发的多线程并行版本的Mambo模拟器,对Ope本文档来自技高网...

【技术保护点】
一种基于集群系统的计算机体系结构方案并行模拟优选方法,其特征在于包括以下步骤: 第一步,构建具备远程命令执行环境的集群系统,该集群系统由多个节点构成,每个节点都是一台可独立运行的计算机,各个节点间通过网络设备相互连接,指定一个节点为主控节点,它负责与用户交互,完成输入输出及模拟配置文件的分发、任务调度和结果分析,其它节点称为模拟节点,它们负责对具体的体系结构配置进行模拟,并将模拟结果发送给主控节点,P个可用的模拟节点编号为1-P;主控节点上安装有全局配置程序、模拟配置文件生成程序、任务调度程序和结果分析程序;全局配置程序负责将全局性的配置设置记录在全局配置文件中;模拟配置文件生成程序根据全局配置文件生成覆盖整个设计空间的模拟配置文件,每个模拟配置文件记录体系结构的一种配置,包含设计空间中每个参数的一个具体的取值,代表设计空间的一个点;任务调度程序根据全局配置文件将模拟配置文件分发到各个模拟节点,并调度各个模拟节点针对各自分配的模拟配置文件进行模拟评估;结果分析程序接收各个模拟节点上的模拟结果,进行统计分析,筛选出最优配置;模拟节点上安装有目标体系结构模拟器和Benchmark程序,模拟节点收到主控节点向它分配的模拟配置文件后,根据从模拟配置文件中获得各个体系结构参数的取值,在模拟器上模拟运行Benchmark程序,得到目标体系结构采用当前配置情况下的性能数据; 第二步,主控节点执行全局配置程序,进行全局性的配置设置,将设置结果记录在全局配置文件中,全局配置文件包含模拟节点列表域、模拟器软件域、体系结构参数域和目标性能参数域,全局配置程序进行配置设置的方法是: 2.1全局配置程序指定当前可用做模拟节点的节点,并将指定结果记录在全局配置文件的模拟节点列表域中; 2.2全局配置程序将模拟器软件的文件名、完整路径、Benchmark程序的文件名、完整路径以及运行Benchmark程序时的命令行参数记录在全局配置文件的模拟器软件域中;2.3全局配置程序将体系结构设计空间所包含的配置参数的名称及其取值范围记录在全局配置文件的体系结构参数域,体系结构参数域包含三个子域:枚举型参数子域、整数型参数子域和浮点型参数子域;设体系结构设计空间中包含K个枚举型参数e↓[1],e↓[2],…,e↓[K],第α个枚举型参数e↓[α]取n↓[α]个枚举值e↓[α](1),e↓[α](2),…,e↓[α](n↓[α]),1≤α≤K,则在枚举型...

【技术特征摘要】
1.一种基于集群系统的计算机体系结构方案并行模拟优选方法,其特征在于包括以下步骤:第一步,构建具备远程命令执行环境的集群系统,该集群系统由多个节点构成,每个节点都是一台可独立运行的计算机,各个节点间通过网络设备相互连接,指定一个节点为主控节点,它负责与用户交互,完成输入输出及模拟配置文件的分发、任务调度和结果分析,其它节点称为模拟节点,它们负责对具体的体系结构配置进行模拟,并将模拟结果发送给主控节点,P个可用的模拟节点编号为1—P;主控节点上安装有全局配置程序、模拟配置文件生成程序、任务调度程序和结果分析程序;全局配置程序负责将全局性的配置设置记录在全局配置文件中;模拟配置文件生成程序根据全局配置文件生成覆盖整个设计空间的模拟配置文件,每个模拟配置文件记录体系结构的一种配置,包含设计空间中每个参数的一个具体的取值,代表设计空间的一个点;任务调度程序根据全局配置文件将模拟配置文件分发到各个模拟节点,并调度各个模拟节点针对各自分配的模拟配置文件进行模拟评估;结果分析程序接收各个模拟节点上的模拟结果,进行统计分析,筛选出最优配置;模拟节点上安装有目标体系结构模拟器和Benchmark程序,模拟节点收到主控节点向它分配的模拟配置文件后,...

【专利技术属性】
技术研发人员:车永刚徐传福王勇献王正华陆平静曹维方建滨翁玉芬
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:43[中国|湖南]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利