Thanks Paul, It looks like we (indirectly) call MPI_Abort() when the argument is invalid. That would explain the counter intuitive error message
Cheers, Gilles Paul Kapinos <kapi...@itc.rwth-aachen.de> wrote: >Dear Open MPI developer, >please take a look at the attached 'hello MPI world' file. >We know that it contain an error (you should never put '1476395012' into >MPI_Init_thread() call! It was a typo, initially...) BUT, see what happens if >you compile&call it: > >$ mpif90 -g mpihelloworld.f90 >$ ./a.out > 1476395012 3 >*** The MPI_Init_thread() function was called before MPI_INIT was invoked. >*** This is disallowed by the MPI standard. >*** Your MPI job will now abort. >[cluster-hpc.rz.RWTH-Aachen.DE:25739] Local abort before MPI_INIT completed >successfully; not able to aggregate error messages, and not able to guarantee >that all other processes were killed > >For me, reading this: > > MPI_Init_thread() function was called before MPI_INIT was invoked. > > This is disallowed by the MPI standard >...produced some cognitive dissonance, as the MPI's calls to MPI_Init_thread >and >MPI_Init are well-known to be *mutually exclusive*. Well maybe with >'MPI_Init_thread() function' something Open MPI- internal is meant instead of >MPI's MPI_Init_thread, but the error message stays strongly unbelievable ( 2 + >2 >= 6 !) > >Maybe you can text a better error message? :o) > >Have a nice day, > >Paul Kapinos > >P.S. Tested versions: 1.10.6 and 2.0.1, with support for MPI_THREAD_MULTIPLE > > > > MPI_Init_thread(3) Open MPI > > MPI_Init_thread(3) > > NAME > > MPI_Init_thread - Initializes the MPI execution environment > > ...... > > DESCRIPTION > > This routine, or MPI_Init, must be called before any other MPI > > routine > > (apart from MPI_Initialized) is called. MPI can be initialized at > > most > > once; subsequent calls to MPI_Init or MPI_Init_thread are erroneous. > > > > MPI_Init_thread, as compared to MPI_Init, has a provision to > > request a > > certain level of thread support in required: > > > > MPI_Init(3) Open MPI > > MPI_Init(3) > > NAME > > MPI_Init - Initializes the MPI execution environment > > ..... > > DESCRIPTION > > This routine, or MPI_Init_thread, must be called before any other > > MPI > > routine (apart from MPI_Initialized) is called. MPI can be > > initialized > > at most once; subsequent calls to MPI_Init or MPI_Init_thread are > > erro- > > neous. > > > > > >-- >Dipl.-Inform. Paul Kapinos - High Performance Computing, >RWTH Aachen University, IT Center >Seffenter Weg 23, D 52074 Aachen (Germany) >Tel: +49 241/80-24915 _______________________________________________ devel mailing list devel@lists.open-mpi.org https://rfd.newmexicoconsortium.org/mailman/listinfo/devel