gem5 Garnet|向python脚本添加控制参数


本文以Garnet 3.0为例。

1. 配置文件地址

1.1 gem5 network配置文件

gem5/chiplet-flow-ctrl/configs/network/Network.py

该文件将命令行输入的参数解析。

1.2 garnet配置文件

/src/mem/ruby/network/garnet/GarnetNetwork.py

该文件用于将Param中已解析的参数添加到C++类中,可以理解为cpp与python代码接口。

2. 添加参数

step1 向Network.py中添加参数解析

    parser.add_argument(
        "--cfc", 
        action="store", 
        type=int, 
        default=0,
        help="to enable Chiplet flow Control"
    )
    if options.network == "garnet":
        network.num_rows = options.mesh_rows
        network.vcs_per_vnet = options.vcs_per_vnet
        network.ni_flit_size = options.link_width_bits / 8
        network.routing_algorithm = options.routing_algorithm
        network.garnet_deadlock_threshold = options.garnet_deadlock_threshold
        network.cfc = options.cfc

注意,解析器以--为标志对参数名称进行解析,例如--cfc则默认将参数名称解析为cfc,在GarnetNetwork.py中应该以Parent.cfc进行调用。

step2 向GarnetNetwork.py中添加参数

cfc = Param.Int(Parent.cfc, "to enable Chiplet Flow Control")

step3 在Cpp类中进行调用

GarnetNetwork::GarnetNetwork(const Params &p)
    : Network(p)
{
	m_cfc = p.cfc;
}
  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iTsta_zx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值