https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119387
Bug ID: 119387
Summary: Regression in performance by a factor of 6 when
building with debugging symbols
Product: gcc
Version: 14.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: fiesh at zefix dot tv
Target Milestone: ---
Created attachment 60831
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=60831&action=edit
Increase in compile time by a factor of 6 when switching from gcc-13 to gcc-14
Since switching to gcc-14, we had to disable debugging symbols because our
compile times exploded. Reducing over a couple weeks, I have now a still large
(10MBish) preprocessed input that exemplifies this. Reducing further, at least
the way I'm doing it by making sure it runs into a CPU timeout if the
corresponding ulimit is set to 800 seconds, is agonizingly slow now.
The attached test case behaves as follows:
% time g++-13 -w -std=c++20 -O2 -c b.ii && time g++-14 -w -std=c++20 -O2 -c
b.ii && time g++-13 -w -std=c++20 -O2 -c -ggdb b.ii && time g++-14 -w
-std=c++20 -O2 -c -ggdb b.ii
g++-13 -w -std=c++20 -O2 -c b.ii 90.61s user 2.77s system 99% cpu 1:33.42
total
g++-14 -w -std=c++20 -O2 -c b.ii 115.60s user 6.47s system 99% cpu 2:02.10
total
g++-13 -w -std=c++20 -O2 -c -ggdb b.ii 107.56s user 2.50s system 99% cpu
1:50.08 total
g++-14 -w -std=c++20 -O2 -c -ggdb b.ii 746.01s user 10.12s system 99% cpu
12:36.42 total