1 C -*- Mode: Fortran; -*-
3 C (C) 2003 by Argonne National Laboratory.
4 C See COPYRIGHT in top-level directory.
9 integer value, wsize, wrank, extra, mykey
10 integer rvalue, svalue, ncomm
15 call mtest_init( ierr )
16 call mpi_comm_size( MPI_COMM_WORLD, wsize, ierr )
17 call mpi_comm_rank( MPI_COMM_WORLD, wrank, ierr )
19 C Simple attribute put and get
21 call mpi_keyval_create( MPI_NULL_COPY_FN, MPI_NULL_DELETE_FN,
23 call mpi_attr_get( MPI_COMM_WORLD, mykey, value, flag, ierr )
27 $ "Did not get flag==.false. for attribute that was not set"
32 call mpi_attr_put( MPI_COMM_WORLD, mykey, value, ierr )
34 call mpi_attr_get( MPI_COMM_WORLD, mykey, rvalue, flag, ierr )
37 print *, "Did not find attribute after set"
39 if (rvalue .ne. svalue) then
41 print *, "Attribute value ", rvalue, " should be ", svalue
46 call mpi_attr_put( MPI_COMM_WORLD, mykey, value, ierr )
48 call mpi_attr_get( MPI_COMM_WORLD, mykey, rvalue, flag, ierr )
51 print *, "Did not find attribute after set (neg)"
53 if (rvalue .ne. svalue) then
55 print *, "Neg Attribute value ", rvalue," should be ",svalue
59 call mpi_keyval_free( mykey, ierr )
60 call mtest_finalize( errs )
61 call mpi_finalize( ierr )