What techniques to avoid conditional branching do you know?

前端 未结 9 514
迷失自我
迷失自我 2021-02-03 23:47

Sometimes a loop where the CPU spends most of the time has some branch prediction miss (misprediction) very often (near .5 probability.) I\'ve seen a few techniques on very isol

9条回答
  •  [愿得一人]
    2021-02-04 00:10

    Using Matt Joiner's example:

    if (b > a) b = a;
    

    You could also do the following, without having to dig into assembly code:

    bool if_else = b > a;
    b = a * if_else + b * !if_else;
    

提交回复
热议问题