https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91332
Richard Biener changed:
What|Removed |Added
Keywords||compile-time-hog
Status|UNCONFIRMED |NEW
Last reconfirmed||2019-08-05
Component|fortran |rtl-optimization
Ever confirmed|0 |1
Known to fail||7.4.1, 9.1.1
--- Comment #1 from Richard Biener ---
Try increasing an eventually present stack limit (ulimit -s unlimited). OTOH
trying to reprodce I see the compile uses >7GB of memory and the stack is
still <16MB. Later memory usage climbs beyond my machines 32GB memory and
the process is killed...
The testcase somewhat resembles that of PR46590? That is, it is a sequence
of many single-nested loops. Trimming the number down to 1000 shows
load CSE after reload : 54.39 (78%) usr 0.00 ( 0%) sys 54.39 (77%) wall
274 kB ( 0%) ggc
TOTAL : 69.30 0.9570.26
330192 kB
for GCC 7 and
dead store elim1 : 8.89 ( 13%) 0.36 ( 36%) 9.26 ( 14%)
1317578 kB ( 36%)
dead store elim2 : 16.29 ( 25%) 0.21 ( 21%) 16.51 ( 25%)
2195108 kB ( 60%)
load CSE after reload : 23.78 ( 36%) 0.00 ( 0%) 23.79 ( 35%)
0 kB ( 0%)
TOTAL : 66.06 1.00 67.20
3672823 kB
103.00user 1.40system 1:44.42elapsed 99%CPU (0avgtext+0avgdata
2465980maxresident)k
0inputs+2208outputs (0major+616413minor)pagefaults 0swaps
for GCC 9. Upping to 2000 loops makes the above (GCC 9)
forward prop : 21.74 ( 12%) 0.01 ( 1%) 21.74 ( 11%)
9208 kB ( 0%)
dead store elim1 : 16.92 ( 9%) 0.63 ( 35%) 17.54 ( 9%)
2670613 kB ( 37%)
dead store elim2 : 28.27 ( 15%) 0.36 ( 20%) 28.62 ( 15%)
4321137 kB ( 59%)
load CSE after reload : 95.49 ( 51%) 0.00 ( 0%) 95.50 ( 50%)
0 kB ( 0%)
TOTAL : 188.82 1.78190.61
7300901 kB
188.82user 1.94system 3:10.77elapsed 99%CPU (0avgtext+0avgdata
4846972maxresident)k
0inputs+4304outputs (0major+1222407minor)pagefaults 0swaps
so it really seems to be all RTL-land.