1 C -*- Mode: Fortran; -*-
3 C (C) 2011 by Argonne National Laboratory.
4 C See COPYRIGHT in top-level directory.
10 integer i, ans, size, rank, color, comm, newcomm
11 integer maxSize, displ
12 parameter (maxSize=128)
13 integer scounts(maxSize), sdispls(maxSize), stypes(maxSize)
14 integer rcounts(maxSize), rdispls(maxSize), rtypes(maxSize)
15 integer sbuf(maxSize), rbuf(maxSize)
19 call mtest_init( ierr )
21 call mpi_comm_dup( MPI_COMM_WORLD, comm, ierr )
23 call mpi_comm_split_type( comm, MPI_COMM_TYPE_SHARED, rank,
24 & MPI_INFO_NULL, newcomm, ierr )
25 call mpi_comm_rank( newcomm, rank, ierr )
26 call mpi_comm_size( newcomm, size, ierr )
31 stypes(i) = MPI_INTEGER
32 sbuf(i) = rank * size + i
35 rtypes(i) = MPI_INTEGER
38 call mpi_alltoallv( sbuf, scounts, sdispls, stypes,
39 & rbuf, rcounts, rdispls, rtypes, newcomm, ierr )
41 call mpi_comm_free( newcomm, ierr )
42 call mpi_comm_free( comm, ierr )
44 call mtest_finalize( errs )
45 call mpi_finalize( ierr )