优化 – 在linux内核中使用可能/不太可能的返回参数

前端之家收集整理的这篇文章主要介绍了优化 – 在linux内核中使用可能/不太可能的返回参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
只是在 linux内核中看到这个结构,我无法得到它的含义.
110         return unlikely(sl->sequence != start);

我知道可能/不太可能使用此处描述的__builtin_expect函数
http://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html

You may use __builtin_expect to provide the compiler with branch prediction information.

但是对于无条件分支,哪种分支预测提示是可能的?

解决方法

只是在这里猜测,但想象一下编译器内联函数,你在调用代码中有这个:
if (functionUsingUnlikelyForReturn()) {
   // Do something
} else {
   // Do something different
}

那么分支预测要注意提示是完全合理的.

猜你在找的Linux相关文章