【问题标题】:Branch Prediction: Branch Order vs builtin_expect分支预测:分支顺序与 builtin_expect
【发布时间】:2015-09-20 04:47:37
【问题描述】:

我正在C++ 中学习分支预测,并且有一个相当简单的问题。

似乎 __builtin_expect 术语告诉编译器在汇编代码中首先放置哪个子句。

但是,如果这是由程序员手动添加的,这与在 C++ 代码中简单地切换 if/else 子句有何不同?

【问题讨论】:

标签: c++ micro-optimization branch-prediction


【解决方案1】:

允许编译器的优化器重新排序分支。如果编译器出错(或可能)出错,__builtin_expect 很有用。

【讨论】:

    猜你喜欢
    • 2014-04-25
    • 2014-03-03
    • 1970-01-01
    • 2016-07-01
    • 2011-02-01
    • 2015-11-24
    • 2012-07-02
    • 2012-12-10
    • 2017-03-12
    相关资源
    最近更新 更多