From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 27DB93846078; Thu, 9 Jul 2020 11:40:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 27DB93846078 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1594294846; bh=xSIP7d0FI7+H5vaJvzda7YaYR9EFapsUMv+3A9IzUZY=; h=From:To:Subject:Date:In-Reply-To:References:From; b=vep75ynBwM1IHv05k8RsiZpNH7CKsxRIDnZt3M8NbFHRTvSliA6KLBFLrEMvbu9yD V6kFv5GPShcmZxI2W+lEx9xVy44StFwKTyb1e2svOcn0xFPOmMBvU1Sf37YIyHytce LX5lMj7BydjVKUfdwZK9yVckxhdYz0bv75Fb9XmQ= From: "rguenth at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug bootstrap/84402] [meta] GCC build system: parallelism bottleneck Date: Thu, 09 Jul 2020 11:40:45 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: bootstrap X-Bugzilla-Version: unknown X-Bugzilla-Keywords: build, meta-bug X-Bugzilla-Severity: normal X-Bugzilla-Who: rguenth at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 10.2 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: 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: Thu, 09 Jul 2020 11:40:46 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D84402 --- Comment #37 from Richard Biener --- (In reply to Martin Li=C5=A1ka from comment #36) > (In reply to jojo from comment #35) > > (In reply to Martin Li=C5=A1ka from comment #30) > > > A possible solution can be usage of '-flinker-output=3Dnolto-rel -r' = for huge > > > files. > >=20 > > it's useful for splitting huge files ? >=20 > There's experiment I did: >=20 > $ time g++ -O2 /tmp/gimple-match.ii -c >=20 > real 0m35.790s > user 0m35.490s > sys 0m0.268s >=20 > $ time g++ -O2 /tmp/gimple-match.ii -c -flto >=20 > real 0m8.138s > user 0m7.915s > sys 0m0.202s >=20 > $ time gcc -flto=3Dauto -flinker-output=3Dnolto-rel gimple-match.o -r -o > gimple-match2.o >=20 > real 0m9.087s > user 1m56.028s > sys 0m3.292s >=20 > $ time gcc -flto=3Dauto -flinker-output=3Dnolto-rel gimple-match.o -r -o > gimple-match2.o --param lto-partitions=3D8 >=20 > real 0m7.350s > user 0m48.548s > sys 0m0.976s >=20 > $ time gcc -flto=3Dauto -flinker-output=3Dnolto-rel gimple-match.o -r -o > gimple-match2.o --param lto-partitions=3D4 >=20 > real 0m9.847s > user 0m30.462s > sys 0m0.392s >=20 > so for N=3D=3D4 we get to 8+10s =3D 18s (compared to the original 36s). A= nd total > user time is 30+8, which is comparable > to the original 36s. The GSoC parallelism project this year is supposed to replicate this in a cheaper way and also develop some magic to automatically trigger it when it seems profitable.=