https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107409
Bug ID: 107409
Summary: Perf loss ~5% on 519.lbm_r SPEC cpu2017 benchmark
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: rvmallad at amazon dot com
Target Milestone: ---
Created attachment 53773
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53773&action=edit
Input and source files.
Below is some perf data executing the 519.lbm_r benchmark on aarch64
architecture (Graviton 3 processor). I have comparison of the baseline perf
(mainline commit ID: f56d48b2471c388401174029324e1f4c4b84fcdb) vs. a fix for
the same (revert the code change in commit ID:
a9a4edf0e71bbac9f1b5dcecdcf9250111d16889).
Steps to compile:
$ gcc -std=c99 -mabi=lp64 -g -Ofast -mcpu=native lbm.i main.i -lm -flto -o
519_lbm_r_base
$ time ./519_lbm_r_base 3000 reference.dat 0 0 100_100_130_ldc.of
real 2m50.946s
Reverting the code changes in commit ID:
a9a4edf0e71bbac9f1b5dcecdcf9250111d16889
$ time ./519_lbm_r_fix 3000 reference.dat 0 0 100_100_130_ldc.of
real 2m42.091s
The code change reverted was in the following file:
* tree-cfg.c (execute_fixup_cfg): Update also max_bb_count when scaling happen.
Author: Jan Hubicka <[email protected]>
Date: Sat Nov 30 22:25:24 2019 +0100
Please find attached the files to reproduce this issue and the fix.