gem5: 使用ruby memory system中的mesh结构 出现AssertionError错误
Posted mfmdaoyou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gem5: 使用ruby memory system中的mesh结构 出现AssertionError错误相关的知识,希望对你有一定的参考价值。
问题:在使用ruby memory system中的mesh结构測试时,出现例如以下错误:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/home/fandroid/gem5/src/python/m5/main.py", line 388, in main
t = t.tb_next
File "configs/example/ruby_fs.py", line 112, in <module>
Ruby.create_system(options, system, system.piobus, system._dma_ports)
File "/home/fandroid/gem5/configs/ruby/Ruby.py", line 153, in create_system
RouterClass)
File "/home/fandroid/gem5/configs/topologies/Mesh.py", line 84, in makeTopology
assert(node.type == ‘DMA_Controller‘)
AssertionError
解决方法: 參考这里
请看例如以下代码:
# 该问题主要是--num-dirs=16没有设置引起的。--garnet-network=flexible也是必需要设置的,否则会出现deadlock错误。
build/ALPHA_MOESI_CMP_directory/gem5.debug configs/example/ruby_fs.py -n 16 --l1i_size=32kB --l1d_size=32kB --l2_size=16MB --num-l2caches=16 --topology=Mesh --cpu-type=timing --mesh-rows=4 --num-dirs=16 --garnet-network=flexible
以上是关于gem5: 使用ruby memory system中的mesh结构 出现AssertionError错误的主要内容,如果未能解决你的问题,请参考以下文章