<div dir="ltr"><div dir="ltr">Hi,<div><br></div><div>I have a Fortran code that calls an external function only at the root processor. If this external function returns an error code that indicates that it failed, then I call PetscFinalize() only at the root processor. For example:</div><div><br></div><div><div><font face="monospace, monospace">if(rank==0) then    </font></div><div><font face="monospace, monospace">    metis_call_status = METIS_SetDefaultOptions(opts)</font></div><div><font face="monospace, monospace">    if( metis_call_status /= 1 ) then</font></div><div><span style="font-family:monospace,monospace">        call PetscFinalize(ierr)</span><br></div><div><font face="monospace, monospace">        stop</font></div><div><font face="monospace, monospace">    end if</font></div></div><div><font face="monospace, monospace">end if</font></div><div><br></div><div>I noticed that this will cause the other processors to "hang". I don't want to change the Metis call. Do you have a suggestion on how to propagate PetscFinalize to other processors? Or another solution?</div><div><br></div><div>Thank you,</div><div><br></div><div>Paula</div></div></div>