https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119606

            Bug ID: 119606
           Summary: [15 regression] Commit 'Optimize string constructor'
                    causes regression in Snappy workload for
                    -mcpu=neoverse-v2 with LTO
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jschmitz at gcc dot gnu.org
                CC: hubicka at ucw dot cz
  Target Milestone: ---
            Target: aarch64

Created attachment 60969
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=60969&action=edit
Script to reproduce snappy regression

The commit that optimizes string constructors
(https://gcc.gnu.org/g:9c5505a35d9d71705464f9254f55407192d31ec3) causes changes
in performance for the Snappy workload for -mcpu=neoverse-v2, including some
regressions.

In the attachment is a script to reproduce the regressions. It builds GCC from
commits 37f35ebc and 9c5505a3 and runs Snappy with -O3 -Wl,-z,muldefs -lm
-flto=auto -Wl,--sort-section=name -mcpu=neoverse-v2.

Use it like this:
parentdir=<path/to/gcc_src/parentdir> ./snappy_script.sh

As of today, we observed the following runtime changes (values are percentages;
positive values mean that running Snappy from commit 9c5505a3 has longer
runtime than from commit 37f35ebc):

BM_UFlat/4/2 2.92308
BM_UValidate/5/2 -2.9106
BM_UValidate/7/1 2.29277
BM_UValidate/11/1 5.47945
BM_UIOVecSource/0/1 4.00891
BM_UIOVecSource/0/2 6.37636
BM_UIOVecSource/2/1 -3.59375
BM_UIOVecSource/2/2 2.8754
BM_UIOVecSource/4/2 4.42478
BM_UIOVecSource/5/2 2.42424
BM_UIOVecSource/10/2 8.71985
BM_UIOVecSink/3 3.1746
BM_UFlatSink/10/2 2.41935
BM_ZFlat/0/1 3.24826
BM_ZFlat/0/2 6.54952
BM_ZFlat/1/2 2.00501
BM_ZFlat/2/2 4.46735
BM_ZFlat/4/2 4.5045
BM_ZFlat/5/2 2.47678
BM_ZFlat/10/2 9.17782

In the past, we have also seen regressions in other tests, such as UFlat/6/1
and UFlat/6/2.

Reply via email to