来源于:改两行代码性能提升12%!AMD Zen 5的隐藏性能被GCC补丁挖出-pg官网首页入口
发布时间:2026-08-24 17:41:37
文章摘要:
改两行代码性能提升12%!AMD Zen 5的隐藏性能被GCC补丁挖出-pg官网首页入口:改两行代码性能提升12%!AMD Zen 5的隐藏性能被GCC补丁挖出-pg官网首页入口 改两行代码性能提升12%!AMD Zen 5的隐藏性能被GCC补丁挖出-pg官网首页入口
8月24日消息,改两AMD编译器工程师Venkataramanan Kumar近日向GCC(GNU编译器套件)提交了一则仅两行代码的行代性补丁,将Zen 4和Zen 5处理器的码性开云线上官网分支预测错误成本参数上调了3个单位。 这一微调在SPEC CPU 2017的隐藏544.nab_r基准测试中,为Zen 5带来了12%的被G补丁性能提升,Zen 4也获得了9%的挖出增益。 分支预测是改两现代CPU实现高速运行的核心技术之一。CPU在执行指令时,行代性会提前猜测条件分支(如if语句)的码性开云线上官网走向并预先加载指令,若猜对则效率极高。隐藏 但若猜错,被G补丁整个流水线将被清空,挖出造成数十个时钟周期的改两性能损失。随着Zen 4和Zen 5的行代性流水线越来越深,分支预测错误的码性实际代价远高于GCC成本表中的预设值。 编译器如何应对这一差异?实际上,GCC编译器内部维护着一张“成本表”,用以评估不同指令操作的周期消耗,并据此决定是否将分支代码转换为无分支的条件传送指令。 若表中设定的分支预测错误成本过低,编译器会保留过多本应被优化的分支,导致CPU频繁因预测失误而清空流水线。 此次补丁将Zen 4和Zen 5成本表中的分支预测错误成本参数从COSTS_N_INSNS(2)调整为COSTS_N_INSNS(2)+3,使编译器在生成代码时更积极地消除分支。 值得注意的是,此次优化并非AMD独创思路。2026年6月,英特尔软件工程师Lili Cui曾在GCC通用x86调优中做过完全相同的修改,同样上调了3个单位,为英特尔Granite Rapids带来了12.7%的性能提升,Zen 5也获得了12.1%的增益。 该补丁目前仍在GCC邮件列表审核中,预计将纳入明年发布的GCC 17稳定版,并可能反向移植到GCC 16.3小版本。
返回首页