GEM5 Garnet +DSENT: NoC power model 功耗模型

0. 简介

现在(2024)集成的是dsent。 Garnet作者,Turshar在2018年说Orion已经过时不在集成DSENT,但是集成DSENT的代码随着gem5更新也过时了,而他短期内没有更新的计划(2018年说的)。2023年还有一些相关的官方邮件更新。这里是关于运行dsent的介绍和修复。

0.1 DSENT 地址

这里是github地址:https://github.com/mit-carbon/Graphite/tree/master/contrib/dsent/dsent-core

( https://sites.google.com/site/mitdsent 最常见于搜索的这个地址,也是readme中的地址,已经404了)

据下面的邮件回复说,DSENT 并未得到积极开发/维护,但github地址有一个副本。
下面的地址也是Turshar教授关于dsent和garnet的回复。本文后续会详细介绍这两份邮件。
https://www.mail-archive.com/gem5-users@gem5.org/msg21347.html
https://www.mail-archive.com/gem5-users@gem5.org/msg15749.html

1. 2023年: 推荐用garnet来获取统计数据

见下图。 dsent 的解析脚本已经过时了。 可以用garnet来获取统计数据然后单独运行DSENT。
在这里插入图片描述

1.1 2023邮件: DSENT 不能给自定义的单元估计功耗

其实很好理解,大家一般是用Synopsys的工具或者intel之类公司发布的文章数据作为ground truth,建了个model说在这些条件下算的值是比较准的,然后外推到其他没有ground truth的条件。
但是自己写的unit是没有流片或者rtl参考值的,也就没人(包括DSENT)建model。除非自己流片或者自己写个rtl让合成工具给功耗估计值。
在这里插入图片描述

1.2 2018邮件:DSENT读取config.ini和stats.txt

其实这两txt文件的数据也已手动输入。不过也可以更改parser代码,用代码读取文件作为输入。

2. 实际的运行

2.0 编译DSENT

2.1 (不更改)运行DSENT

2.1.1 (不更改)不debug直接运行DSENT,报错

2.1.2 (不更改)debug

python ./util/on-chip-network-power-area.py /home/yz/myprojects/2024GEM5/parsec-tests/yzmodifiedgem5/ m5out /home/yz/myprojects/2024GEM5/parsec-tests/yzmodifiedgem5/ext/dsent/configs/garnet_router.cfg /home/yz/myprojects/2024GEM5/parsec-tests/yzmodifiedgem5/ext/dsent/configs/garnet_link.cfg 32 500

几个问题:0. python文件还是不行,还是试试单独编译dsent(与gem5 cpp或python代码无关),再手动把stat和config的文件导入进去。
下面是关于gem5/ext/dsent下的问题。 这个是生成一个。so文件,供python 代码调用。 但是代码过时了,即使是邮件里给的补丁也过时了。

  1. pythonconfig是python2,而我们的系统已经默认python3了。 解决: conda开一个python2.7的环境。

2.2 更改运行DSENT

GEM5内置的版本因为gem5迭代而没有更新内置的dsent,BUG 太多,回归DSETN 原版:https://github.com/mit-carbon/Graphite/tree/master/contrib/dsent/dsent-core。

附录

没有加括号,print加上括号
在这里插入图片描述

  • 18
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值