Skip to content

[Bug]: Crashing with certain flavors of gcc 16.1 using HWM14 #143

Description

@mattzett

What happened?

clang and GNU C and C++ compilers with gfortran 16.1, MacOS 26.6 on M-series: Builds and runs fine without HWM14, but when built with HWM14 it will crash after a minute or so running a simulation with a dipole grid. Seems to work fine with gcc 15.2 (M-series) and works fine on MacOS intel (any compiler combo). Seems to work on our HPC with gcc 13.2, as well. Test data here: https://www.dropbox.com/scl/fo/ssmyqo0l0d6530wybvxej/AGn7tc-NMm4Nfw9JM7UFrJI?rlkey=wx99l0dwj6bzrtm1titnb4m7h&dl=0

Relevant log output

           4 MPI processes detected
./gemini.bin Process:       1 /      3 at 20260813T102936.789
./gemini.bin Process:       3 /      3 at 20260813T102936.789
./gemini.bin Process:       2 /      3 at 20260813T102936.789
./gemini.bin Process:       0 /      3 at 20260813T102936.789
 ******************** input config ****************
simulation directory: /Users/zettergm/simulations/sdcard/simulations_ESF/Eq/Eq_ground_HWM_testing
                            start year-month-day:    2016-03-03
                                      start time:    4500.000
                                        duration:   86400.000
                                    output every:    3600.000
gemini.f90: using input data files:
/Users/zettergm/simulations/sdcard/simulations_ESF/Eq/Eq_ground_HWM_testing/inputs/simsize.h5
/Users/zettergm/simulations/sdcard/simulations_ESF/Eq/Eq_ground_HWM_testing/inputs/simgrid.h5
/Users/zettergm/simulations/sdcard/simulations_ESF/Eq/Eq_ground_HWM_testing/inputs/initial_conditions.h5
 no neutral disturbance specified.
 no precipitation specified
 no Efield specified
 no solar flux specified
 GLOW disabled
MSISE00 enabled for neutral atmosphere calculations.
 EIA enables with peok equatorial drift:     10.000000000000000     
 Variable background neutral atmosphere disabled.
 Background precipitation has total energy flux and energy:     1.0000000000000000E-003   3000.0000000000000     
 Parallel current calculation disabled.
 Inertial capacitance calculation type:             0
 Diffusion solve type:             2
 Milestone output disabled.
 Gravitaional drift terms disabled.
 Two-way coupling disabled.
 Lagrangian grid disabled
 Using default magnetic pole.
 Anomalous electrojet heating disabled.
 Nonlinear current disabled.
 Using legacy model for electron inelastic collisions.
 **************** end input config ***************
process grid (Number MPI processes) x2, x3:  2 2
Process:0 at process grid location: 0 0
 get_subgrid_size: 3D run
process grid (Number MPI processes) x2, x3:  2 2
Process:2 at process grid location: 0 1
 get_subgrid_size: 3D run
process grid (Number MPI processes) x2, x3:  2 2
Process:1 at process grid location: 1 0
 get_subgrid_size: 3D run
process grid (Number MPI processes) x2, x3:  2 2
Process:3 at process grid location: 1 1
 get_subgrid_size: 3D run
 init_storage_root done
 gather_grid_root done
 calc_coord_diffs_root done
 enforce_gridmpi_periodic done
 grid_check done
 Done with read_grid_in...
 enforce_gridmpi_periodic done
 grid_check done
 Done with read_grid_in...
 enforce_gridmpi_periodic done
 enforce_gridmpi_periodic done
 grid_check done
 Done with read_grid_in...
 grid_check done
 Done with read_grid_in...
 Starting from beginning of simulation...
 Starting from beginning of simulation...
 Starting from beginning of simulation...
 Starting from beginning of simulation...
/Users/zettergm/simulations/sdcard/simulations_ESF/Eq/Eq_ground_HWM_testing/inputs/simsize.h5 input dimensions:   128   128    24
Target (output) grid structure dimensions:   128   128    24
File handle opened for reading initial conditions: /Users/zettergm/simulations/sdcard/simulations_ESF/Eq/Eq_ground_HWM_testing/inputs/initial_conditions.h5
Initial conditions read from file: /Users/zettergm/simulations/sdcard/simulations_ESF/Eq/Eq_ground_HWM_testing/inputs/initial_conditions.h5
Sent ICs to workers in   6.184E-03 seconds.

Initial conditions (root):
------------------------
Min/max input density:   3.00E+00   6.98E+11
Min/max input velocity:   0.00E+00   0.00E+00
Min/max input temperature:   1.97E+02   1.07E+03
Min/max input electric potential:   0.00E+00   0.00E+00
Min/max input electric potential (full grid):   0.00E+00   0.00E+00
 NOTE:  Neutral background to be taken from empirical models...
 NOTE:  Neutral background to be taken from empirical models...
 NOTE:  Neutral background to be taken from empirical models...
Recomputed initial dist. fields via pot2perpfield:
     gemini    0.0000000000000000        0.0000000000000000     
     gemini    0.0000000000000000        0.0000000000000000     
     gemini    0.0000000000000000        0.0000000000000000     
     gemini    0.0000000000000000        0.0000000000000000     
 Priming inputdata
 NOTE:  Neutral background to be taken from empirical models...
 Setting Lagrangian-ness
 Recomputed initial fields including background (BGfieldLagrangian):
        0.0000000000000000        0.0000000000000000     
        0.0000000000000000        0.0000000000000000     
        0.0000000000000000        0.0000000000000000     
 Recomputed initial drifts:  
       -36.101351563943545        28.842169633203074     
       -39.717429173066911        38.766254508921456     
 Starting main loop
 Updating empirical background atmosphere...
 Updating empirical background atmosphere...
 Updating empirical background atmosphere...
 Updating empirical background atmosphere...
 System sizes according to Phiall:           128         128          24
 HDF5 Output file name:  /Users/zettergm/simulations/sdcard/simulations_ESF/Eq/Eq_ground_HWM_testing/20160303_04500.000000.h5
 INFO:  Input file has selected full output or milestones, large files may result!
 Writing topside boundary conditions for non-inverted-type grid...
Throttling dt to:       2.000E-06
Throttling dt to:       4.000E-06
Throttling dt to:       8.000E-06
Throttling dt to:      16.000E-06
Throttling dt to:      32.000E-06
Throttling dt to:      64.000E-06
Throttling dt to:     128.000E-06
Throttling dt to:     256.000E-06
Current time 2016-03-03  4500.000511; dt=0.000256
Throttling dt to:     512.000E-06
Throttling dt to:       1.024E-03
Throttling dt to:       2.048E-03
Throttling dt to:       4.096E-03
Throttling dt to:       8.192E-03
Throttling dt to:      16.384E-03
Throttling dt to:      32.768E-03
Throttling dt to:      65.536E-03
Current time 2016-03-03  4500.222085; dt=0.039932
Throttling dt to:     404.462E-06
Current time 2016-03-03  4500.388267; dt=0.000225
Throttling dt to:     449.292E-06
Throttling dt to:     898.585E-06
Throttling dt to:       1.797E-03
Throttling dt to:       3.594E-03
Throttling dt to:       7.189E-03
Throttling dt to:      14.377E-03
Throttling dt to:      28.755E-03
Throttling dt to:       6.404E-03
Current time 2016-03-03  4500.472229; dt=0.006404
Throttling dt to:      12.808E-03
Throttling dt to:      25.616E-03
Throttling dt to:       9.864E-06

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions