gem5: 使用ruby memory system中的mesh结构 出现AssertionError错误

本文介绍在使用Gem5模拟器进行内存系统测试时遇到的错误,并提供了解决方案。错误出现在使用mesh拓扑结构时,由于未正确设置--num-dirs参数导致。通过设置--num-dirs=16并启用--garnet-network=flexible选项可以避免死锁问题。

问题:在使用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
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值