OpenMPI 0.1.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Macros | Typedefs | Functions
pml_base_sendreq.h File Reference
`#include "ompi_config.h"`
`#include "ompi/mca/pml/pml.h"`
`#include "ompi/mca/pml/base/pml_base_request.h"`
`#include "opal/datatype/opal_convertor.h"`
`#include "ompi/peruse/peruse-internal.h"`

Go to the source code of this file.

## Data Structures
struct | mca_pml_base_send_request_t
| Base type for send requests. More...

## Macros
#define | MCA_PML_BASE_SEND_REQUEST_INIT(request,addr,count,datatype,peer,tag,comm,mode,persistent,convertor_flags)
| Initialize a send request with call parameters. More...
#define | MCA_PML_BASE_SEND_START(request)
| Mark the request as started from the PML base point of view. More...
#define | MCA_PML_BASE_SEND_REQUEST_FINI(request)
| Release the ref counts on the communicator and datatype. More...

## Typedefs
typedef struct mca_pml_base_send_request_t | mca_pml_base_send_request_t

## Functions
OMPI_DECLSPEC | OBJ_CLASS_DECLARATION (mca_pml_base_send_request_t)

## Macro Definition Documentation

#define MCA_PML_BASE_SEND_REQUEST_FINI | ( |  | request | ) |

Value:
do { \
OMPI_REQUEST_FINI(&(request)->req_base.req_ompi); \
OBJ_RELEASE((request)->req_base.req_comm); \
if( 0 != (request)->req_base.req_count ) \
OBJ_RELEASE((request)->req_base.req_datatype); \
opal_convertor_cleanup( &((request)->req_base.req_convertor) ); \
} while (0)
OBJ_RELEASE
#define OBJ_RELEASE(object)
Release an object (by decrementing its reference count).
Definition: opal_object.h:324
OMPI_REQUEST_FINI
#define OMPI_REQUEST_FINI(request)
Finalize a request.
Definition: request.h:169
request
Definition: evdns.c:158

Release the ref counts on the communicator and datatype.

Parameters

  request | (IN) The send request.

#define MCA_PML_BASE_SEND_REQUEST_INIT | ( |  | request,
|  |  | addr,
|  |  | count,
|  |  | datatype,
|  |  | peer,
|  |  | tag,
|  |  | comm,
|  |  | mode,
|  |  | persistent,
|  |  | convertor_flags
| ) |  |

Initialize a send request with call parameters.

Parameters

  request | (IN) Send request
  addr | (IN) User buffer
  count | (IN) Number of elements of indicated datatype.
  datatype | (IN) User defined datatype
  peer | (IN) Destination rank
  tag | (IN) User defined tag
  comm | (IN) Communicator
  mode | (IN) Send mode (STANDARD,BUFFERED,SYNCHRONOUS,READY)
  persistent | (IN) Is request persistent.
  convertor_flags | (IN) Flags to pass to convertor

Perform a any one-time initialization. Note that per-use initialization is done in the send request start routine.

#define MCA_PML_BASE_SEND_START | ( |  | request | ) |

Value:
do { \
(request)->req_pml_complete = false; \
(request)->req_ompi.req_complete = false; \
(request)->req_ompi.req_state = OMPI_REQUEST_ACTIVE; \
(request)->req_ompi.req_status._cancelled = 0; \
(request)->req_ompi.req_status.MPI_ERROR = OMPI_SUCCESS; \
(request)->req_ompi.req_mpi_object.comm = (request)->req_comm; \
(request)->req_ompi.req_peer = (request)->req_peer; \
} while (0)
request
Definition: evdns.c:158

Mark the request as started from the PML base point of view.

Parameters

  request | (IN) The send request.

Referenced by mca_pml_bfo_send_request_restart().