Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

From: Bert Wesarg (wesarg_at_[hidden])
Date: 2006-05-03 09:58:47


Hello list,

i get some erroneous results from calls to MPI_Comm_split with an
intercommunicator as communicator.

this is a brokendown testcase, the source is attached:

test_split.c:

mpi_comm_spwan(world, "test_split_client", 1, &inter)
for i=1:np
  if rank < i
    mpi_comm_split(inter, 0, 0, &inter2)
    /* print new rank and size */
    mpi_comm_free(&inter2)
  else
    mpi_comm_split(inter, MPI_UNDEFINED, 0, &inter2)

test_split_client.c:

mpi_comm_get_parent(&inter)
while true
  mpi_comm_split(inter, 0, 0, &inter2)
  /* print new remote size */
  mpi_comm_free(&inter2)
mpi_comm_free(&inter)

first, my expected results:
np = 2:

        test_split:0 test_split:1 test_split_client:0
i = 1:
        new rank = 0 new remote size = 1
        new size = 1

i = 2:
        new rank = 0 new rank = 1 new remote size = 2
        new size = 2 new size = 2
...

now some actually results:
a)
        test_split:0 test_split:1 test_split_client:0
i = 1:
        new rank = 0 new remote size = 1
        new size = 2

i = 2:
        new rank = 0 new rank = 1 new remote size = 2
        new size = 2 new size = 2

b)
        test_split:0 test_split:1 test_split_client:0
i = 1:
        new rank = 0 new remote size = 1
        new size = 1

i = 2:
        new rank = 0 new rank = 1 new remote size = 2
        new size = 1 new size = 2

c)
        test_split:0 test_split:1 test_split_client:0
i = 1:
        new rank = 0 new remote size = 1
        new size = 2

i = 2:
        new rank = 0 new rank = 1 new remote size = 2
        new size = 1 new size = 2

something with the new size in rank 0 is wrong or the remote size

can someone please pointout if my code is wrong, or something with open-mpi?

greatings
bert wesarg

ps: these test were run on an dual smp machine and open-mpi 1.0.2
pps: i attached also an split test with intracommunicators, these results
are all expected