【问题标题】:what is compiler feedback based optimization? is it available with arm gcc compiler?什么是基于编译器反馈的优化?它可用于 arm gcc 编译器吗?
【发布时间】:2015-03-31 04:54:12
【问题描述】:

什么是基于编译器反馈(不是链接器反馈)的优化?如何获取 arm gcc 编译器的反馈文件?

【问题讨论】:

    标签: gcc arm neon


    【解决方案1】:

    阅读 GCC 文档中的 chapteroptimizations(以及 GCC 中关于 ARM 的部分:ARM options

    你可以使用:

    • link-time optimization (LTO) 通过编译 和链接-flto 以及其他优化标志(所以 make CC='gcc -flto -O2'):链接阶段也进行优化(因此编译器链接的文件不仅包含目标代码,也是中间的GIMPLE内部编译器表示)
    • profile-guided optimization(PGO,与 -fprofile-generate-fprofile-use-fauto-profile 等...):您首先使用分析指令生成代码,运行一些具有代表性的基准以获取分析信息,然后使用这些指令进行第二次编译分析信息。

    您可以混合使用这两种方法并提供许多其他优化标志。一定要和他们保持一致。

    在 x86 和 x86-64(以及本机 ARM)上,您还可以使用 -mtune=native,还有很多其他的 -mtune 可能性。

    有些人称基于配置文件的优化编译器反馈优化(因为动态运行时配置文件信息被反馈给编译器)。我更喜欢“配置文件引导优化”术语。另见this old question

    【讨论】:

      猜你喜欢
      • 2020-07-24
      • 2010-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-25
      相关资源
      最近更新 更多