Troubleshooting

Ben Keller edited this page May 7, 2017 · 5 revisions

Common Crashes

Here are a few common crashes that can occur, and suggestions for dealing with them.


The assert subroutine failed: pkd->nLocal < pkd->nStore, file pkd.c, line 4278

If you are forming stars, there are more stars formed than you have space for. Try increasing dExtraStore. Sometimes, however this won't work because although the total memory is enough, a processor has too many particles on it to fit in any more stars. In this case, you need to edit pst.c: _pstRootSplit(). At about line 762 is #define NUM_SAFETY = 64; Change this to a larger number.


assert failed: pkd->pStore !=NULL, file pkd.c, line 177

You are seriously lacking in memory. Buy a bigger computer, or run a smaller problem.


assert failed: pkd->kdNodes != NULL, file pkd.c 2546

You lack memory for the tree. Decreasing "dExtraStore" or increasing "nBucket" might fix this.


assert failed: nout == 1, file pkd.c, line 3770

Writing a checkpoint failed. Check disk space or quotas.


pkdOutVector: could not close file: Input/output error

Writing output vector files failed. Check disk space or quotas.


master.c:5825: msrReadCheck: Assertion 'i =u msr->nGas' failed.

A checkpoint is corrupt. Parallel writing of the checkpoint can cause this on some architectures.


pkd.c:3592: pkdDrift: Assertion 'bInBox' failed.

One or more particles is more than a factor of 2 outside the computational volume. This could be bad initial conditions or timesteps that are way to large.


stiff.c:142: stiffStep: Assertion 'xest !== 0.0' failed.

There are problems integrating the thermal energy equation. Try smaller timesteps?


pkd.c:5952: pkdKickVpred: Assertion 'p->uPred >== 0.0' failed.

This is another thermal energy integration problem. Try smaller steps, but no guarantees.


mdl.c:1277: doMiss: Assertion '0' failed. or mdl.c: 1744: mdlAquire: Assertion '0' failed.

This depends on which version of mdl is being run. This happens in the SPH calculation if the cache is too small to hold all the neighbors of a particle. Increasing the cache size (MDL_CACHE_SIZE define at the top of mdl.h) is a way to fix the symptom, but the underlying trouble is a particle with an excessive number of neighbors.


pkd.c:2451: BuildBinary: Assertion 'pkd->iFreeCell < pkd->nNodes' failed.

The symptom is that gasoline calculates how many nodes it needs before it builds the tree, but then when it actually builds the tree, it find that it needs more nodes than calculated. I don't know what causes this to happen, so I can just guess at a fix: try increasing nBucket (default is 8, try 16).

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.