MPI_Comm_create_keyval - Generates a new communicator
attribute key
SYNOPSIS
C:
#include <mpi.h>
int MPI_Comm_create_keyval ( comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval,
extra_state)
MPI_Comm_copy_attr_function *comm_copy_attr_fn;
MPI_Comm_delete_attr_function *comm_delete_attr_fn;
int *comm_keyval;
void *extra_state;
Fortran:
INCLUDE "mpif.h" (or USE MPI)
EXTERNAL comm_copy_attr_fn, comm_delete_attr_fn
INTEGER keyval, ierror
INTEGER(KIND=MPI_ADDRESS_KIND) extra_state
CALL MPI_COMM_CREATE_KEYVAL(comm_copy_attr_fn, comm_delete_attr_fn, comm_keyval,
extra_state, ierror)
STANDARDS
This function is defined in the MPI-2 standard.
This release implements the MPI 1.2 standard, as
documented by the MPI Forum in the spring 1997 release of
MPI: A Message Passing Interface Standard.
DESCRIPTION
The MPI_Comm_create_keyval routine generates a new
communicator attribute key. This function replaces
MPI_Keyval_create which has been deprecated. This routine
accepts the following parameters:
comm_copy_attr_fn
Specifies the copy callback function for
keyval
comm_delete_attr_fn
Specifies the delete callback function for
keyval
extra_state Specifies an extra state for callback
functions
keyval Returns the key value for future access
ierror Specifies the return code value for
successful completion, which is in
MPI_SUCCESS. MPI_SUCCESS is defined in the
mpif.h file.
NOTES
Key values are global (available for any and all
communicators).
There are subtle differences between C and Fortran that
require that comm_copy_attr_fn be written in the same
language as that from which
MPI_Comm_create_keyval is called. This should not be a
problem for most users; only programers using both Fortran
and C in the same program need to be sure that they follow
this rule. Also, the attribute types for Fortran call
back functions are integers of kind MPI_ADDRESS_KIND.
Note this is different from the callback routines used
with the deprecated MPI_Keyval_create routine. Thus,
replacement of calls to the Fortran version of
MPI_Keyval_create with MPI_Comm_create_keyval may require
changes to the accompanying callback functions.
Man(1) output converted with
man2html