Gem5 为什么首先要从检查点恢复操作?

Gem5 为什么首先要从检查点恢复操作?,gem5,checkpoint,Gem5,Checkpoint,当我查看在gem5上实现的顶级会议的源代码时,他们都首先使用--take checkpoint=$INST_take_checkpoint来生成100000条指令的检查点。当它实际运行时,从检查点开始运行。但我一直认为检查点是在程序崩溃时恢复?或者将一个大型基准测试分为几次运行?但你为什么一开始就检查?这是什么意思?根据我的经验,检查点的主要应用是在引导后快进模拟(使用快速CPU完成),然后开始在详细的CPU中运行的内容,相关: 我认为,--take checkpoint获取多个检查点的动机正如

当我查看在gem5上实现的顶级会议的源代码时,他们都首先使用
--take checkpoint=$INST_take_checkpoint
来生成100000条指令的检查点。当它实际运行时,从检查点开始运行。但我一直认为检查点是在程序崩溃时恢复?或者将一个大型基准测试分为几次运行?但你为什么一开始就检查?这是什么意思?

根据我的经验,检查点的主要应用是在引导后快进模拟(使用快速CPU完成),然后开始在详细的CPU中运行的内容,相关:

我认为,
--take checkpoint
获取多个检查点的动机正如您所说的,就是将一个大型基准测试划分为多个运行。首先进行快速原子运行直到结束,生成几个检查点,然后从检查点开始跨多台不同的机器进行更详细、更慢的运行,以并行化工作,然后以某种方式组合结果,这可能是有意义的