Cleanly abort simulation on presence of an abort file.
This MR adds support for detecting the presence of an 'abort' file which can be used to trigger a clean termination of the simulation.
The name of the support file can be set using the solver info 'CheckAbortFile', while the frequency of the checks set using the 'CheckAbortSteps' parameter. This check is coupled to the NaN checker and 'CheckAbortSteps' replaces the previous 'CheckNanSteps'. Both abort file and NaNs are checked for at the same time and utilise the same MPI reduction.
This MR closes #47 (closed) .
Merge request reports
Activity
@ccantwel Ive been tested this out and it doesnt seem to work fully. The presence of the abort file caused the solver to stop iterating but it just hangs and never finishes.
My suspicion is that the first process to check for the file and find it aborts the time integration and deletes the abort file. But then its not there for the next process and it carries on. It then dead locks because all the processes are waiting for the first one which has ended.
Does this sound about right? I agree the file should be deleted, if someone forgot their next simulation will end as soon as it starts. But it needs to be deleted once all the processes have seen it.
added 1 commit
- bbb493cf - tweak to avoid race condition on finding the abort file
added library label
changed milestone to %v5.0.0
added 2535 commits
-
bbb493cf...b351ef52 - 2534 commits from branch
master
- c2bc42d0 - Merge branch 'master' into ticket/47-abort-file
-
bbb493cf...b351ef52 - 2534 commits from branch
added 1 commit
- 2f8287b5 - Adjusted CHANGELOG to put entries under 5.0.0
mentioned in commit 466ada77