像以下的代码块,尽量不要将大循环放到外层循环。
原因是CPU使用到分支预测技术,以上一个的判断来预测下一个判断。
像一下代码大概会判断错误100次,如果换过来则判断错误100000次。
而CPU设计引入了分支预测技术,主要是减少指令跳转的时候重新获取新指令。
两层循环数差距越大,性能相差越明显。
for(int i = 0; i < 100; i++){
for(int j = 0; j < 100000; j++){
}
}
本文探讨了循环结构在代码性能中的关键作用,特别是在CPU分支预测技术的影响下。通过实例分析,解释了内外循环顺序的不同对性能的影响,指出当两层循环数量差距大时,合理的循环顺序可以显著提高程序效率。
3万+

被折叠的 条评论
为什么被折叠?



