Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] [EXTERNAL] MPI_Ireduce_scatter_block hangs
From: Barrett, Brian W (bwbarre_at_[hidden])
Date: 2012-07-12 12:38:58


Hello -

Thank you for the bug report. This has been fixed in the trunk.

Brian

On 7/12/12 1:46 AM, "Mikhail Kurnosov" <mkurnosov_at_[hidden]> wrote:

>Hello,
>
>In the case of single process the MPI_Ireduce_scatter_block is
>segfaulting with v1.9a1r26786.
>
>But in other cases (commsize >= 2) processes hang in
>MPI_Ireduce_scatter_block. The NBC_Progress hangs during rounds
>processing.
>
>The following example illustrates this problem:
>
>$ cat ireduce_scatter_block_test.c
>#include <stdio.h>
>#include <stdlib.h>
>#include <mpi.h>
>
>int main(int argc, char **argv)
>{
> MPI_Request req;
> MPI_Status status;
> double *sbuf, *rbuf;
> int commsize, i, j, count = 10;
>
> MPI_Init(&argc, &argv);
> MPI_Comm_size(MPI_COMM_WORLD, &commsize);
>
> sbuf = malloc(sizeof(*sbuf) * count * commsize);
> rbuf = malloc(sizeof(*rbuf) * count);
> for (i = 0; i < commsize; i++) {
> for (j = 0; j < count; j++) {
> sbuf[i] = 1.0;
> }
> }
>
> MPI_Ireduce_scatter_block(sbuf, rbuf, count, MPI_DOUBLE,
> MPI_SUM, MPI_COMM_WORLD, &req);
> MPI_Wait(&req, &status);
>
> free(rbuf);
> free(sbuf);
> MPI_Finalize();
>
> return 0;
>}
>
>--
>Mikhail Kurnosov
>Computer Systems Department
>Siberian State University of Telecommunications and Information Sciences
>Address: 630102, 86 Kirova str., Novosibirsk, Russia
>Email: mkurnosov_at_[hidden]
>http://cpct.sibsutis.ru/~mkurnosov
>_______________________________________________
>devel mailing list
>devel_at_[hidden]
>http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>