⚡ CPU能预测多少分支?
实用洞察: 现代CPU有惊人的分支预测能力,这使得小数据集基准测试变得困难
基准测试方法
使用随机值测试分支预测:
while (howmany != 0) {
val = generate_random_value()
if(val is odd) write to buffer
decrement howmany
}
由于使用随机值,CPU应该一半时间预测错误。
结果
30,000
AMD Zen 5
10,000
Apple M4
5,000
Intel Emerald Rapids
结论
AMD在这个基准测试上表现出色,Intel令人失望。如果你用小数据集测试,可能会得到与实际生产环境不符的结果——因为CPU会学习并完美预测分支!