一种均衡可扩展计算机体系结构分布式模拟方法.pdf
徐传福 等:一种均衡可扩展计算机体系结构分布式模拟方法 1845
对于Benchmark测试和分析模型,基于软件的模拟技术由于能够在性能评估的代价、时间以及灵活性之间进行
很好的平衡而应用较为广泛.当前,国内外 已经开发了一些支持不同模拟 目标的体系结构模拟器软件,例如美国
斯坦福大学以超标量乱序执行处理器为El标的 SimpleScalar[112J模拟器以及中国科学院计算技术研究所针对
“龙芯”处理器开发的SimGodSon[3],SimOS.Goodson[】等.与在实际硬件上执行Benchmark程序相 比,模拟技术的
一 个主要缺点是执行速度慢,我们采用 SimpleScalar(版本 3.Od)中最为详细的模拟工具 sim.outorder在一个
2.2GHz主频 、2.0GB 内存 的宿主机平 台上获 得 的模拟速 率仅为约 1MIPS(miUion instructionsper
second),Benchmark程序实际运行 1分钟意味着需要模拟执行几天时间,以这种速度完整模拟标准 Benchmark
程序集,如 SPECCPU2000等,需要多达数月.随着新型体系结构和Benchmark程序 日益复杂和庞大,模拟器运行
速度慢 的问题更加突出,已严重制约了体系结构设计空间探索的效率5【】.为此,研究人员提出了一些加速模拟技
术如抽样模拟、Benchmark程序输入集缩减等[6~1,这些方法主要解决串行模拟时如何选择部分模拟负载 以减
少模拟时间,并保证一定模拟精度的问题.
近年来,研究人员又提出了利用多个分布式节点同时运行 串行模拟器实现并行模拟的方案,即所谓的分布
式并行模拟(distributedsimulation,简称 Ds)9【-12].DS的基本结构如图 1(a)所示:Benchmark工作负载分为若干指
令区间(interva1)并分配给模拟节点(SimNode),模拟节点对指定的区间完成模拟后,将局部性能结果汇总到服务
器节点(ServerNode),由后者合成全局性能指标.图 1(b)给 出了模拟过程的时空图:模拟过程中,模拟节点首先采
用功能模拟(functionalsimulation)快速推进 (fast.forward)~所分配的指令区间之前进行适当的预热 (warm—up),
然后对该区间进行详细性能模拟(detailedsimulation).
空闲时间
— — 功能模拟
预热
田脚 详细模拟
… … … 啤 值… … 一s…。
SimNode2
SimNodei
Benchmark~令分割
(a)DS体系结构 (b)DS模拟过程时空图
Fig.1
图1
与抽样模拟等加速方法相比,DS具有 以下优点:
1)对Benchmark负载进行了完整模拟因而精度较高;抽样等加速方法仅选取了负载的一部分,难以全面刻
画程序特征,因而有不同程度的精度损失.
2)基于已有串行模拟器构建因而简单且易于实现,对其核心代码改动也很少;抽样模拟往往需要专 门的
预处理或后处理,额外开销大.
3)独立于具体的体系结构配置和Benchmark程序,较为通用;抽样模拟往往需要针对不同体系结构配置、
性能指标或Benchmark程序重新生成抽样指令区间.
分析已有的DS方法,普遍存在如下问题: