MPI_Get_elements man page on YellowDog

Man page or keyword search:  
man Server   18644 pages
apropos Keyword Search (all sections)
Output format
YellowDog logo
[printable version]

MPI_Get_elements(3OpenMPI)			    MPI_Get_elements(3OpenMPI)

NAME
       MPI_Get_elements	  -  Returns  the  number  of basic elements in a data
       type.

SYNTAX
C Syntax
       #include <mpi.h>
       int MPI_Get_elements(MPI_Status *status, MPI_Datatype datatype,
	    int *count)

Fortran Syntax
       INCLUDE 'mpif.h'
       MPI_GET_ELEMENTS(STATUS, DATATYPE, COUNT, IERROR)
	    INTEGER   STATUS(MPI_STATUS_SIZE), DATATYPE, COUNT, IERROR

C++ Syntax
       #include <mpi.h>
       int Status::Get_elements(const Datatype& datatype) const

INPUT PARAMETERS
       status	 Return status of receive operation (status).

       datatype	 Datatype used by receive operation (handle).

OUTPUT PARAMETERS
       count	 Number of received basic elements (integer).

       IERROR	 Fortran only: Error status (integer).

DESCRIPTION
       MPI_Get_elements behaves different from	MPI_Get_count,	which  returns
       the  number  of	"top-level  entries"  received,	 i.e.,	the  number of
       "copies" of type datatype. MPI_Get_count may return any	integer	 value
       k,  where  0 =< k =< count. If MPI_Get_count returns k, then the number
       of basic elements received (and the  value  returned  by	  MPI_Get_ele‐
       ments)  is  n  * k, where n is the number of basic elements in the type
       map of datatype. If the number of basic elements received is not a mul‐
       tiple of n, that is, if the receive operation has not received an inte‐
       gral number of datatype "copies," then MPI_Get_count returns the	 value
       MPI_UNDEFINED.

       Example: Usage of MPI_Get_count and MPI_Get_element:

	 ...
	 CALL MPI_TYPE_CONTIGUOUS(2, MPI_REAL, Type2, ierr)
	 CALL MPI_TYPE_COMMIT(Type2, ierr)
	 ...
	 CALL MPI_COMM_RANK(comm, rank, ierr)
	 IF(rank.EQ.0) THEN
	       CALL MPI_SEND(a, 2, MPI_REAL, 1, 0, comm, ierr)
	       CALL MPI_SEND(a, 3, MPI_REAL, 1, 0, comm, ierr)
	 ELSE
	       CALL MPI_RECV(a, 2, Type2, 0, 0, comm, stat, ierr)
	       CALL MPI_GET_COUNT(stat, Type2, i, ierr)	    ! returns i=1
	       CALL MPI_GET_ELEMENTS(stat, Type2, i, ierr)  ! returns i=2
	       CALL MPI_RECV(a, 2, Type2, 0, 0, comm, stat, ierr)
	       CALL MPI_GET_COUNT(stat, Type2, i, ierr) ! returns i=MPI_UNDEFINED
	       CALL MPI_GET_ELEMENTS(stat, Type2, i, ierr)  ! returns i=3
	 END IF

       The  function  MPI_Get_elements	can also be used after a probe to find
       the number of elements in the probed message. Note that the  two	 func‐
       tions  MPI_Get_count  and  MPI_Get_elements return the same values when
       they are used with primitive data types.

ERRORS
       Almost all MPI routines return an error value; C routines as the	 value
       of  the	function  and Fortran routines in the last argument. C++ func‐
       tions do not return errors. If the default  error  handler  is  set  to
       MPI::ERRORS_THROW_EXCEPTIONS, then on error the C++ exception mechanism
       will be used to throw an MPI:Exception object.

       Before the error value is returned, the current MPI  error  handler  is
       called.	By  default, this error handler aborts the MPI job, except for
       I/O  function  errors.  The  error  handler   may   be	changed	  with
       MPI_Comm_set_errhandler; the predefined error handler MPI_ERRORS_RETURN
       may be used to cause error values to be returned. Note  that  MPI  does
       not guarantee that an MPI program can continue past an error.

SEE ALSO
       MPI_Get_count

Open MPI 1.2			September 2006	    MPI_Get_elements(3OpenMPI)
[top]

List of man pages available for YellowDog

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net