【发布时间】:2015-04-28 07:49:09
【问题描述】:
我有一些用 C++ 编写的代码,用于模拟 CPU 的预取器。在代码中,我有一些看起来像这样的定义
#define x 5
...
for(int i = 0; i < x; i++)
...
在模拟结束时,模拟器会输出平均访问时间,这是衡量预取器执行情况的指标。预取器的性能取决于 x 和其他一些类似的定义。
我想要一个程序来更改 x,重新编译新代码,运行它,查看值,并根据模拟访问时间的变化重复该过程。
有谁知道不手动更改值的简单方法?
编辑:我想我需要澄清一下,我不想编写一个学习算法,因为我从来没有做过,而且可能做不到和其他人一样好。
【问题讨论】:
-
只需编写一个 shell 脚本来执行此操作...将 #define x 放入单独的包含文件中。让你的 shell 脚本重新生成文件
-
@thang 但是我需要将一些机器学习算法编程到一个 shell 脚本中,我不想显得太懒惰,但这似乎需要做很多工作
-
如果对
x的更改涉及机器学习,那么x不应该是#define。它应该是可变的,并且应该封装您现有的所有代码,以便可以使用不同的x值多次调用它。 -
老实说,我并不是说这是侮辱...如果您对此有疑问,那么我质疑您的模拟可能有多准确。
标签: c++ optimization genetic-algorithm recompile hill-climbing