Skip to content

Crash with "Un-drifted gparts" in SmallCosmoVolume_cooling -- Extra gpart are not escaped in many code functions

The SmallCosmoVolume_cooling example seems to have a chance of crashing when run with a certain configuration. If I build Swift (commit 062b620d from master) with

module purge
module load intel_comp/2018 intel_mpi/2018 fftw/3.3.7
module load parallel_hdf5/1.10.3 parmetis/4.0.3
module load gsl/2.4 Healpix/3.40

cd .. && ./autogen.sh && cd -
../configure \
    --disable-ipo \
    --enable-debug \
    --enable-optimization \
    --with-hdf5 \
    --with-fftw \
    --with-parmetis \
    --with-subgrid=EAGLE

and then run Swift like this using the parameters from examples/SmallCosmoVolume/SmallCosmoVolume_cooling:

./swiftsim/build/examples/swift --verbose=1 \
    --self-gravity --cosmology --hydro --cooling \
    --pin --threads=28 \
    ./small_cosmo_volume.yml

then it sometimes reaches z=0 successfully, but occasionally it crashes with a message like this:

...
[00542.1] engine_unskip: took 71.350 ms.
[00542.1] engine_prepare: Communicating rebuild flag took 0.001 ms.
[00542.1] engine_prepare: took 71.355 ms (including unskip, rebuild and reweight).
[00542.2] ../../src/runner_doiact_grav.c:runner_doself_grav_pp():1742: Un-drifted gparts
Command terminated by signal 6

Maybe this is just not a very sensible configuration - compiling with the full EAGLE model then only using hydro and cooling at runtime?

Edited by Matthieu Schaller
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information