From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 231843857C73; Wed, 27 Jan 2021 12:23:44 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 231843857C73 From: "rguenth at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/80960] [8/9/10/11 Regression] Huge memory use when compiling a very large test case Date: Wed, 27 Jan 2021 12:23:43 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: rtl-optimization X-Bugzilla-Version: 6.3.0 X-Bugzilla-Keywords: memory-hog X-Bugzilla-Severity: normal X-Bugzilla-Who: rguenth at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 8.5 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cf_known_to_work cf_known_to_fail Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Jan 2021 12:23:44 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D80960 Richard Biener changed: What |Removed |Added ---------------------------------------------------------------------------- Known to work| |4.3.4 Known to fail| |4.8.5 --- Comment #23 from Richard Biener --- So now I see > /usr/bin/time gfortran-4.3 t.f90 -fdefault-integer-8 -O2 -ftime-report combiner : 0.25 ( 2%) usr 0.00 ( 0%) sys 0.24 ( 2%) wal= l=20=20=20 9947 kB ( 5%) ggc TOTAL : 15.43 0.21 15.65=20=20=20= =20=20=20=20=20=20=20=20=20 220667 kB 15.59user 0.24system 0:15.84elapsed 99%CPU (0avgtext+0avgdata 607492maxresident)k 0inputs+0outputs (0major+164981minor)pagefaults 0swaps > /usr/bin/time gfortran-4.8 t.f90 -fdefault-integer-8 -O2 -ftime-report combiner : 90.22 (48%) usr 1.07 (63%) sys 91.33 (48%) w= all 1757344 kB (88%) ggc TOTAL : 188.29 1.70 190.04=20=20=20= =20=20=20=20=20=20=20=20 2000994 kB 188.43user 1.73system 3:10.21elapsed 99%CPU (0avgtext+0avgdata 6523136maxresident)k 0inputs+0outputs (0major+1727565minor)pagefaults 0swaps > /usr/bin/time gfortran-7 t.f90 -fdefault-integer-8 -O2 -fno-checking -fti= me-report combiner : 67.18 (64%) usr 0.56 (60%) sys 67.76 (64%) w= all 2701121 kB (60%) ggc TOTAL : 105.40 0.93 106.36=20=20=20= =20=20=20=20=20=20=20=20 4530486 kB 105.54user 0.99system 1:46.58elapsed 99%CPU (0avgtext+0avgdata 3297696maxresident)k 48248inputs+0outputs (7major+835050minor)pagefaults 0swaps > /usr/bin/time gfortran-10 t.f90 -fdefault-integer-8 -O2 -fno-checking -ft= ime-report combiner : 0.24 ( 0%) 0.00 ( 0%) 0.22 ( = 0%) 10376 kB ( 1%) TOTAL : 52.02 0.49 52.52=20= =20=20=20=20=20=20 1876905 kB 52.16user 0.52system 0:52.71elapsed 99%CPU (0avgtext+0avgdata 1831392maxresident)k 55032inputs+0outputs (8major+539965minor)pagefaults 0swaps (that combine number prevails on trunk as well, I can't spot any code that disables combine on large BBs so not sure what goes on here) At least clearly GCC 4.8.5 is bad as well and there's clear progression on both memory use and compile-time, still not up to the level of GCC 4.3. Interestingly memory-wise it all points to RTL DSE (GCC 10), likely because of DF. Eventually post-reload we can simplify some things... dead store elim2 : 6.90 ( 12%) 0.20 ( 27%) 7.12 ( = 12%) 1641076 kB ( 87%)=