CASL / Futility

VERA Fortran Utilities
Other
44 stars 20 forks source link

UnitTest FINALIZE_TEST will deadlock for some MPI tests #167

Closed rks171 closed 3 years ago

rks171 commented 5 years ago

If using multiple processors and ASSERT is not called on all procs at least once, FINALIZE_TEST will deadlock because the processors where ASSERT was not called will not enter this if block:

236         IF(tmp%npass+tmp%nfail>0) THEN

Root will post a MPI_Recv that will never get sent. The workaround is to just call ASSERT(.true., "") on any procs where no ASSERT is otherwise called.