memtest.py可以通过以下方式正常工作:
build/X86/gem5.opt configs/example/memtest.py
但是当我给出参数时,它没有给出这样的选项错误:
build/X86/gem5.opt configs/example/memtest.py --cpu-type=TimingSimpleCPU
gem5 Simulator System. http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.
gem5 compiled Jul 27 2018 14:19:35
gem5 started Sep 17 2018 15:31:03
gem5 executing on 2030044470, pid 5045
command line: build/X86/gem5.opt configs/example/memtest.py --cpu-type=TimingSimpleCPU
Usage: memtest.py [options]
memtest.py: error: no such option: --cpu-type
另一方面,se.py和fs.py可以与其他参数配合使用:
build/X86/gem5.opt configs/example/se.py -c /home/prakhar/gem5/tests/test-progs/hello/bin/x86/linux/hello --cpu-type=TimingSimpleCPU
是否可以使用--cpu-type和--mem-type参数运行memtest.py?
答案 0 :(得分:0)
错误提示,没有这样的选择。
在对的调用中为se.py和fs.py添加了cpu类型
Options.addCommonOptions(parser)
您可以按照以下步骤手动添加cpu类型和mem类型
from m5.util import addToPath, fatal
addToPath('../')
from common import CpuConfig
from common import MemConfig
并将选项添加到解析器
parser = optparse.OptionParser()
# Other parser options
parser.add_option("--cpu-type", type="choice", default="AtomicSimpleCPU",
choices=CpuConfig.cpu_names(),
help = "type of cpu to run with")
parser.add_option("--mem-type", type="choice", default="DDR3_1600_8x8",
choices=MemConfig.mem_names(),
help = "type of memory to use")
然后将选项添加为 options.cpu_type 和 options.mem_type 。您可以查看其他示例(在configs / example /中),以了解是否需要修改其他内容以符合您的意图。
答案 1 :(得分:0)
好吧,我在这个问题上苦苦挣扎,然后我在gem5 / configs / example / memtest.py中找到了这一行:
system = System(physmem = SimpleMemory(),cache_line_size = block_size)
如果要与其他任何内存一起运行,即。 DRAMSim2,您可以更改此行。
system = System(physmem = DRAMSim2(),cache_line_size = block_size)
这将启用运行内存类型为DRAMSim2的memtest.py。您现在可以将其设置为:
build/X86/gem5.opt configs/example/memtest.py
还可以更改cpu类型的ypu可以参考以下行:
if options.atomic:
root.system.mem_mode = 'atomic'
else:
root.system.mem_mode = 'timing'
默认的CPU类型为计时,您可以通过在命令中添加--atomic来将其更改为atomic。