在 SE 模式下,将每个统计打印与其对应的 m5op 关联起来要容易得多。
但是,在 FS 模式下,在同一个“stats.txt”文件中会打印多个(数十甚至数百个)统计信息;我们如何识别以下内容:
哪个统计打印对应于什么?
或者
至少,哪些统计打印是用户调用的 m5ops 的续集?
每个统计转储都包含:
---------- Begin Simulation Statistics ----------
sim_seconds 0.000001 # Number of seconds simulated
sim_ticks 1000 # Number of ticks simulated
...
---------- End Simulation Statistics ----------
在完整系统中,模拟器转储统计信息的唯一时间是退出,其余所有时间都由您的运行脚本和应用程序驱动。因此,除了最后一个之外的所有统计数据块,包裹在 Begin-End Simulation Statistics 之间,对应于 m5op 发出的转储。如果您需要更准确地了解哪个事件导致了哪个转储,您可以检查 pseudo_inst.cc 文件并相应地添加/修改它。这可能会在较新的版本中实现,但我不是最新的。