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

Axel <axel.huebl at web dot de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |RESOLVED
         Resolution|---                         |INVALID

--- Comment #6 from Axel <axel.huebl at web dot de> ---
Thank you everyone for your help!

I started over and cannot reproduce the problem anymore. Uff, I am really sorry
for that.

I am took now the latest `development` branch as of commit
57cc9a3397f3e89e57b3bbc15ba8215ad2144b4f.
  https://github.com/ECP-WarpX/WarpX
I patched in
  set_property(TARGET WarpX PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE)
in line 152 of CMakeLists.txt

If I configure and compile like this on Power9:
  cmake ..
  make VERBOSE=ON

I CANNOT reproduce the ICE.

Next, I also add LTO to the static library target that we build on the fly,
AMReX, as I forgot to report initially. I pushed a branch to
https://github.com/ax3l/amrex/commit/facef9ac064ff638c7f37c726f65b4e465c532af
so one can do execute in a fresh build directory:
  cmake .. -DWarpX_amrex_repo=https://github.com/ax3l/amrex.git
-DWarpX_amrex_branch=topic-lto
  make VERBOSE=ON

I can still not reproduce the report, something must have been off in my
environment... I am also building not in TMPFS now, as I was last time due to a
laggy FS in $HOME.

I can even build with microarch tuning now:
  CXXFLAGS="-mcpu=native -mtune=native" cmake ..
-DWarpX_amrex_repo=https://github.com/ax3l/amrex.git
-DWarpX_amrex_branch=topic-lto

@Richard @Segher Thank you for the hints as well. Sorry as well to you.

Pew, I am glad this works!

I did a little non-representative GCC 6.4.0 benchmark on Power9 with
time-to-solution (in s):

notune     406.8 (-O3) | 485.9 (-O2) 
  tune     400.3 (-O3) | 476.3 (-O2)
notune_lto 407.5 (-O3)
  tune_lto 404.2 (-O3)

Reply via email to