https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80838

            Bug ID: 80838
           Summary: PGO/LTO bootstrapped compiler 5% slower than pure PGO
                    bootstrapped one
           Product: gcc
           Version: 7.1.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
          Assignee: unassigned at gcc dot gnu.org
          Reporter: trippels at gcc dot gnu.org
                CC: hubicka at ucw dot cz
  Target Milestone: ---

On the new Ryzen compile farm machine a PGO/LTO bootstrapped compiler is ~5%
slower than a pure PGO bootstrapped one.
I've seen the same effect on other X86_64 machines, too.

 % ../gcc/configure --disable-libstdcxx-pch --disable-libvtv --disable-libitm
--disable-libcilkrts --disable-libssp --disable-libgomp --disable-werror
--disable-multilib --enable-languages=c,c++,fortran --enable-checking=release
--with-build-config="bootstrap-O3 (bootstrap-lto)"
 % make -j16 BOOT_CFLAGS="-Wno-error=coverage-mismatch -march=native -O3 -pipe"
STAGE1_CFLAGS="-Wno-error=coverage-mismatch -march=native -O3 -pipe"
CFLAGS_FOR_TARGET="-Wno-error=coverage-mismatch -march=native -O3 -pipe"
CXXFLAGS_FOR_TARGET="-Wno-error=coverage-mismatch -march=native -O3 -pipe"
profiledbootstrap

bootstrap-lto/PGO:
trippels@gcc67 ~ % time g++ -Ofast -w tramp3d-v4.cpp
g++ -Ofast -w tramp3d-v4.cpp  16.12s user 0.30s system 99% cpu 16.465 total

pure PGO:
trippels@gcc67 ~ % time g++ -Ofast -w tramp3d-v4.cpp
g++ -Ofast -w tramp3d-v4.cpp  15.17s user 0.41s system 99% cpu 15.626 total

(The resulting binary runs very quick:
--cartvis 1.0 0.0 --rhomin 1e-8 -n 20
Time spent in iteration: 0.93937
(on Sandy Bridge:        1.78999))

Reply via email to