【问题标题】:Why is loop unrolling off by default in XCode?为什么在 XCode 中默认循环展开?
【发布时间】:2017-01-25 14:44:43
【问题描述】:

似乎Apple LLVM 8.0 - Code Generation 部分下的Unroll Loops 优化设置在最新的XCode 8.2.1 中默认关闭,即使对于Release 配置也是如此。有什么好的理由吗?我认为循环展开是最基本的优化之一。

【问题讨论】:

    标签: c++ xcode optimization clang loop-unrolling


    【解决方案1】:

    为了避免增加生成代码的大小,它似乎被禁用了。

    Tuning for Performance and Responsiveness

    表 6-1 编译器优化选项

    更快

    编译器执行几乎所有支持的优化,不需要时空权衡。 编译器不会使用此选项执行循环展开或函数内联。此选项会增加编译时间和生成代码的性能。

    最快

    编译器执行所有优化以尝试提高生成代码的速度。当编译器执行积极的函数内联时,此选项会增加生成代码的大小。 一般不推荐使用此选项。

    【讨论】:

    猜你喜欢
    • 2019-09-18
    • 1970-01-01
    • 2013-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-13
    • 1970-01-01
    • 2019-04-25
    相关资源
    最近更新 更多