https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109154
Bug ID: 109154 Summary: [13 regression] aarch64 -mcpu=neoverse-v1 microbude performance regression Product: gcc Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: pgodbole at nvidia dot com CC: ramana at gcc dot gnu.org Target Milestone: --- Created attachment 54681 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54681&action=edit Reduced microbude test case We're observing a significant performance drop (~30%) in an application when comparing gcc trunk against gcc 12, observed with -mcpu=neoverse-v1 on an aarch64 Neoverse-V1. With OMP_NUM_THREADS=1 we see a regression of nearly 60% between gcc12 and gcc13. The test case attached is reduced from a test shared here https://github.com/UoB-HPC/microBUDE and has been made more suitable for a gcc bug report. $ install-gcc-12/bin/g++ --version g++ (GCC) 12.2.1 20221222 [master r13-4850-g74544bdadc4] Copyright (C) 2022 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ install-gcc-trunk/bin/g++ --version g++ (GCC) 13.0.1 20230315 (experimental) Copyright (C) 2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Command line used : $ install-gcc-12/bin/g++ -std=c++17 -Wall -Wno-sign-compare -Wno-unused-variable -Ofast -mcpu=neoverse-v1 -fopenmp -g3 reduced_microbude.cpp -o microbude-12-neoverse-v1 $ ./microbude-12-neoverse-v1 $ install-gcc-trunk/bin/g++ -std=c++17 -Wall -Wno-sign-compare -Wno-unused-variable -Ofast -mcpu=neoverse-v1 -fopenmp -g3 reduced_microbude.cpp -o microbude-trunk-neoverse-v1 Bisecting suggests that commit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=4fbe3e6a could be a possible candidate. Thank you Tom Lin for the help here with the bisection. Thanks