StarPU Internal Handbook
starpu_mpi_mpi_backend.h File Reference
#include <common/config.h>
#include <common/uthash.h>

Go to the source code of this file.

Data Structures

struct  _starpu_mpi_envelope
 
struct  _starpu_mpi_req_backend
 

Macros

#define _STARPU_MPI_TAG_ENVELOPE
 
#define _STARPU_MPI_TAG_DATA
 
#define _STARPU_MPI_TAG_SYNC_DATA
 

Enumerations

enum  _starpu_envelope_mode { _STARPU_MPI_ENVELOPE_DATA , _STARPU_MPI_ENVELOPE_SYNC_READY }
 

Variables

int _starpu_mpi_tag
 

Data Structure Documentation

◆ _starpu_mpi_envelope

struct _starpu_mpi_envelope
Data Fields
enum _starpu_envelope_mode mode
starpu_ssize_t size
starpu_mpi_tag_t data_tag
unsigned sync

◆ _starpu_mpi_req_backend

struct _starpu_mpi_req_backend
Data Fields
MPI_Request data_request
starpu_pthread_mutex_t req_mutex
starpu_pthread_cond_t req_cond
starpu_pthread_cond_t posted_cond
struct _starpu_mpi_req * other_request

In the case of a Wait/Test request, we are going to post a request to test the completion of another request

MPI_Request size_req
struct _starpu_mpi_envelope * envelope
unsigned is_internal_req:1
unsigned to_destroy:1
struct _starpu_mpi_req * internal_req
struct _starpu_mpi_early_data_handle * early_data_handle
UT_hash_handle hh
nm_gate_t gate
nm_session_t session
nm_sr_request_t data_request
int waited
piom_cond_t req_cond
nm_sr_request_t size_req