如何在gem5 se模式下依次运行多个进程?

问题描述

我遵循gem5-tutorial来构建测试配置。它以se模式执行hello world。但是,现在我要一个一个地运行多个进程。怎么做?到目前为止,我已经尝试过了

processes = []
processes.append([bzip2_benchmark,bzip2_input])
processes.append([mcf_benchmark,mcf_input])
processes.append([hmmer_benchmark,'--fixed=0','--mean=325','--num=45000','--sd=200','--seed=0',hmmer_input])
processes.append([sjeng_benchmark,sjeng_input])
processes.append([lbm_benchmark,20,'reference.dat',1,benchmark_dir+'470.lbm/data/100_100_130_cf_a.of'])
for p in processes:
    process = Process()
    process.cmd = p
    system.cpu.workload = process
    system.cpu.createThreads()

    root = Root(full_system=False,system=system)
    m5.instantiate()

    print("Beginning simulation!")
    exit_event = m5.simulate()

    print('Exiting @ tick {} because {}'
    .format(m5.curTick(),exit_event.getCause()))

假定所有导入都是正确的,并且系统已正确实例化。在运行第一个过程之后,以上代码给出了“致命的:尝试分配多个Root实例。”我知道为什么会发生这种情况,但是我想知道如何逐个运行这些基准测试程序。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)