15 Star 24 Fork 118

openEuler/gcc

openEuler默认开启-fno-omit-frame-pointer讨论

已完成
任务 成员
创建于  
2024-10-15 10:46

有开发者提出版本中开启默认编译选项-fno-omit-frame-pointer,TC上需要给一个定量的结论
相关信息:https://fedoraproject.org/wiki/Changes/fno-omit-frame-pointer

评论 (5)

编译小伙 创建了任务 8个月前
openeuler-ci-bot 添加了
 
sig/Compiler
标签
8个月前

处理器:鲲鹏920(aarch64)
OS:openEuler 22.03 LTS SP3
编译器:openEuler gcc 10.3
编译选项:-O2

开启前:
输入图片说明
开启后:
输入图片说明

我在x86-64平台上也测试了-fno-omit-frame-pointer的性能影响数据,测试结果如下:
BenchMarks Copies Ratio
500.perlbench_r 224 -1.40%
502.gcc_r 224 -6.30%
505.mcf_r 224 -0.50%
520.omnetpp_r 224 -0.60%
523.xalancbmk_r 224 -0.50%
525.x264_r 224 -3.40%
531.deepsjeng_r 224 -3.20%
541.leela_r 224 -2.20%
548.exchange2_r 224 1.40%
557.xz_r 224 1.10%
503.bwaves_r 224 0.10%
507.cactuBSSN_r 224 -1.20%
508.namd_r 224 -0.70%
510.parest_r 224 -0.40%
511.povray_r 224 -4.60%
519.lbm_r 224 0.00%
521.wrf_r 224 -0.40%
526.blender_r 224 -0.20%
527.cam4_r 224 -0.60%
538.imagick_r 224 -0.60%
544.nab_r 224 -0.60%
549.fotonik3d_r 224 0.00%
554.roms_r 224 0.00%
Geomean-int 224 -1.60%
Geomean-fp 224 -0.70%
Geomean-all 224 -1.10%

测试平台是Intel Emerald Rapids,GCC版本为12.3.0,测试的option是-O2 -march=x86-64-v2,与OpenEuler 24.03LTS里的缺省配置一致。
在SPEC2017上,启用-fno-omit-frame-pointer在intrate上有-1.6%的regression,在fprate上有-0.7%的regression,合计的regression是-1.1%。我也注意到Fedora,Suse和Phoronix的数据,在x86-64平台上报出了1~14%不等的性能影响。
基于比较普遍和显著的性能影响,我建议在x86-64平台上不要默认打开-fno-omit-frame-pointer。
我在Compiler SIG里也做了性能影响的汇报,具体的ppt附在后面,更多的细节和数据可见ppt。
https://gitee.com/openeuler/compiler-docs/blob/b649dfc9deaf077e0a3d22efcaccec5e3ed9f4cf/SIG Bi-weekly Meeting/20240903/no-omit-frame-pointer performance impact - OpenEuler.pdf

此issue用于记录-fno-omit-frame-pointer在X86和aarch64上对SPEC性能的影响,可关闭。

/close

openeuler-ci-bot 任务状态待办的 修改为已完成 4个月前

登录 后才可以发表评论

状态
负责人
项目
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
预计工期 (小时)
开始日期   -   截止日期
-
置顶选项
优先级
里程碑
分支
参与者(3)
5329419 openeuler ci bot 1632792936 编译小伙-li-yancheng Annita-Zhang-Annita-Zhang
1
https://gitee.com/openeuler/gcc.git
git@gitee.com:openeuler/gcc.git
openeuler
gcc
gcc

搜索帮助