我正在做一个项目,自动处理gcc编译器优化选项,而无需程序员指定。 我决定使用旅行推销员algorithm和遗传algorithm来select基于执行速度的最佳优化。 这个应用程序会将一个问题(C ++代码)作为input,并在GCC编译器的所有可用优化选项上进行排列组合,并存储执行所需的时间。
现在,是否可以在Shell脚本中进行编程? 或者我必须用C ++编程?
inheritance人链接到基本文件。 http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=4625477
请让我知道,如果我错了整个概念。 如果你能把我带入正确的道路并提出任何build议,那将是非常有帮助的。
编译器的编译可能会影响编译的程序?
“热”和“内联”组合对function定义的性能影响
linux内核源代码中__section()是什么意思?
具有向后兼容性的gcc平台调优选项
谢谢。
“Pentium4及以上”处理器的海湾合作委员会的最佳游行和选项是什么?
当编译程序在虚拟机内部运行时,应该怎样设置进程?
如何阅读.obj文件?
C:更快地访问查找表?
MinGW编译过于缓慢
Milepost Ctuning项目正是基于这一点(在INRIA,Albert Cohen,Grigori Fursin),使用机器学习技术来调整GCC优化。
你可以使用GCC MELT扩展来做同样的事情。
我认为这明确地证明了古老的建议,海湾合作委员会有太多的选择。
至于回答你的具体问题,我认为你是在做一些最后没有什么价值的东西。 其中一个主要的问题就是你的基因只对特定的架构,环境和gcc版本有用。
另外,我敢肯定,在大多数现实生活中,熟悉GCC的人会比你的算法更好。
我不是故意在你的游行或任何事情上下雨,这当然是一个有趣的技术/智力练习。 我写一个C / C ++程序输出一个shell脚本/命令行,然后运行结果脚本/命令行,对它进行计时,并存储运行所花费的时间和结果的正确性 。 某些优化可能会导致某些代码执行不同,从而导致不正确的结果。 确保你的测试用例正在输出数字数据,这样你就可以计算出你的优化程序与你期待的结果有多接近。
在这里,你的测试用例永远不会覆盖足够的基础,而你的健身功能将主要是猜测(因为它将很大程度上取决于当时在机器上运行的其他进程以及他们在做什么)。 这将需要很长时间才能发展。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。