Re: [Mpi-forum] MPI_Abort - meaning
On Apr 6, 2010, at 4:51 PM, Richard Treumann wrote:
This again brings me back to thinking perhaps the MPI standard cannot offer any decent semantic for a single task making a decision to terminate with success and the people who want this for their applications cannot have it.
It's almost the same semantic as: if (i_have_reached_a_good_state) { printf("Hey user -- we're good. Hit ctrl-c, will ya?\n"); while (1) sleep(100000); } Right? I know that ctrl-c processing (or equivalent) is not mandated -- but it's supported by all MPI implementations. I would assume that your initial assertions are useful: basically, no guarantees are given about the state of anything. If you're calling MPI_QUIT, you're doing so because you don't want to implement a (perhaps complex) control protocol that can shut down all MPI processes in an orderly fashion. You want a more-or-less immediate shutdown of all MPI processes with indication of a "successful" shutdown. I'm sure there's some corner cases to figure out, though -- here's a few off the top of my head: - what happens if MPI_QUIT and MPI_ABORT are invoked simultaneously in multiple MPI processes? What about in the same process? - what happens if an error occurs in MPI_QUIT processing? -- Jeff Squyres [email protected] For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
participants (1)
-
Jeff Squyres