And using EPYC2 with 64 cores I get:
$ time gcc -flto=auto -flinker-output=nolto-rel gimple-match.o -fno-checking
--param lto-partitions=4 -r
real0m11.040s
user0m33.479s
sys 0m0.718s
$ time gcc -flto=auto -flinker-output=nolto-rel gimple-match.o -fno-checking
--param lto-partition
On 3/13/20 4:11 PM, Jan Hubicka wrote:
$ time g++ -O2 /tmp/gimple-match.ii -c -flto -fno-checking
real0m8.709s
user0m8.543s
WPA+LTRANS:
$ time gcc -flto=auto -flinker-output=nolto-rel gimple-match.o -r -o
gimple-match2.o --param lto-partitions=4 -fno-checking
real0m11.220s
user
> > $ time g++ -O2 /tmp/gimple-match.ii -c -flto -fno-checking
> > real0m8.709s
> > user0m8.543s
> >
> > WPA+LTRANS:
> >
> > $ time gcc -flto=auto -flinker-output=nolto-rel gimple-match.o -r -o
> > gimple-match2.o --param lto-partitions=4 -fno-checking
> > real0m11.220s
> Hi.
>
> I played a bit with -flinker-output=nolto-rel of gimple-match.ii and I
> identified
> that current default of min-lto-partition leads to too many LTRANS. We pay
> with
> LTO overhead and so that user time is high.
>
> Base is:
> $ g++ -O2 /tmp/gimple-match.ii -c -fno-checking -o x.o
>
Hi.
I played a bit with -flinker-output=nolto-rel of gimple-match.ii and I
identified
that current default of min-lto-partition leads to too many LTRANS. We pay with
LTO overhead and so that user time is high.
Base is:
$ g++ -O2 /tmp/gimple-match.ii -c -fno-checking -o x.o
real0m40.130s
use