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)