Rick,

Let's assume that you have started 2 processes, and that your sensorList is
{1}. The worldgroup will then be {P0, P1}, which trimmed via the sensorList
will give the sensorgroup {MPI_GROUP_EMPTY} on P0 and the sensorgroup {P1}
on P1. As a result on P0 you will create a MPI_COMM_NULL communicator,
while on P1 you will have a valid communicator sensorComm (which will only
contain P1). You cannot do a Barrier on an MPI_COMM_NULL communicator,
which might explain the "invalid communicator" error you are getting.

George.


On Fri, Oct 14, 2016 at 5:33 PM, Marlborough, Rick <rmarlboro...@aaccorp.com
> wrote:

> Designation: Non-Export Controlled Content
>
> Folks;
>
>                 I have the following code setup. The sensorList is an
> array of ints of size 1. The value it contains is 1. My comm world size is
> 5. The call to MPI_Barrier fails every time with error “invalid
> communicator”. This code is pretty much copied out of a text book. I must
> be doing something wrong. I just don’t see it. Can anyone else spot my
> error? I am using v2.01 on red hat 6.5.
>
>
>
> Thanks
>
> Rick
>
>
>
>
>
>                 MPI_Comm_group(MPI_COMM_WORLD, &worldgroup);
>
> MPI_Group_incl(worldgroup, 1, sensorList, &sensorgroup);
>
> MPI_Comm_create(MPI_COMM_WORLD, sensorgroup, &sensorComm);
>
> MPI_Barrier(sensorComm);
>
> 3.1.1001
>
> _______________________________________________
> users mailing list
> users@lists.open-mpi.org
> https://rfd.newmexicoconsortium.org/mailman/listinfo/users
>
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/users

Reply via email to