我正在尝试运行学习 gem5 教程中解释的 ARM 功率模型:
https://www.gem5.org/documentation/learning_gem5/part2/arm_power_modelling/
如何使用学习gem5教程中多次提到的gem5辅助函数?
答案1
“辅助函数”不是 gem5 的功能,而是一种函数类型,或者你编写函数的目的。以你链接的教程中的这句话为例:
提供的
fs_power.py
脚本通过导入现有脚本然后修改值来扩展现有fs_bigLITTLE.py
脚本。作为此过程的一部分,使用多个循环来遍历要应用 Power Models 的 SimObjects 的后代。因此,要扩展现有模拟以支持 Power Models,定义一个辅助函数来执行以下操作会很有帮助:
在此之后,在这种情况下,有辅助函数的定义_apply_pm
。
因此,辅助函数只是您在主代码之外编写的“普通”函数。辅助函数(通常您有多个辅助函数)不执行您的主要任务,但可以提供帮助;)在上述情况下,该函数_apply_pm
本身不执行模拟,但它扩展了现有模拟以支持电源模型。
这并不是 gem5 独有的。您会发现在很多地方都有编写代码来执行“附带任务”的想法,无论是辅助函数、辅助类还是相关技术所使用的任何东西。