我正在做一个没有程序员规范自动处理gcc编译器优化选项的项目。我决定使用旅行推销员算法和GA来根据执行速度选择最佳优化。这个应用程序会将问题(C ++代码)作为输入,并对GCC编译器中所有可用的优化选项进行排列组合,并存储执行所需的时间。
现在,是否可以在Shell脚本中对此进行编程?或者我必须用C ++本身编程?
这是基础纸的链接。 http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=4625477
如果我对整个概念有误,请告诉我。如果你能引导我走上正确的道路并提出任何建议,那将是非常有帮助的。
三江源。
答案 0 :(得分:1)
答案 1 :(得分:0)
我认为这绝对证明了海湾合作委员会有太多选择的古老建议。
至于回答你的具体问题,我认为你会做一些最终没有太大价值的事情。其中一个主要问题是,您生成的基因只适用于特定的体系结构,环境和gcc版本。
另外,我很确定在大多数现实生活中,熟悉GCC的人会比你的算法更好。
我不打算在你的游行或任何事情上下雨,这肯定是一项有趣的技术/智力练习。我写了一个C / C ++程序,输出一个shell脚本/命令行,然后运行生成的脚本/命令行,定时,并存储运行所花费的时间和结果的正确性 。某些优化可能会导致某些代码执行不同,从而导致错误的结果。确保您的测试用例输出数值数据,以便计算优化程序与您期望的结果的接近程度。
你的测试用例永远不会覆盖足够的地面,而且你的健身功能主要是猜测(因为它很大程度上取决于当时机器上运行的其他进程以及它们正在做什么)。 很长时间需要进化。