/home/aching/Avery/Work.School/Research/pvfs2-lock/s3asim/src/icomm.c File Reference

#include "icomm.h"

Defines

#define ISEND   0
#define IRECV   1
#define MAX_ICOMM   2

Functions

static int check_isendrecv (int icomm_type, int myid, int wait_status, int *flag_p, MPI_Request *req_p, int *req_status_p, int new_req_status, struct mpe_events_s *mpe_events_p, struct test_params_s *test_params_p)
int check_isend (int myid, int wait_status, int *flag_p, MPI_Request *req_p, int *req_status_p, int new_req_status, struct mpe_events_s *mpe_events_p, struct test_params_s *test_params_p)
int check_irecv (int myid, int wait_status, int *flag_p, MPI_Request *req_p, int *req_status_p, int new_req_status, struct mpe_events_s *mpe_events_p, struct test_params_s *test_params_p)

Variables

static const char * decode_icomm [MAX_ICOMM]

Define Documentation

#define IRECV   1

#define ISEND   0

#define MAX_ICOMM   2


Function Documentation

int check_irecv ( int  myid,
int  wait_status,
int *  flag_p,
MPI_Request *  req_p,
int *  req_status_p,
int  new_req_status,
struct mpe_events_s mpe_events_p,
struct test_params_s test_params_p 
)

Check irecv request, shared by both the master and workers. It depends heavily on check_isendrecv().

Parameters:
myid MPI myid.
wait_status Status of the master/worker processes.
flag_p Pointer to request completion.
req_p Pointer to MPI request.
req_status_p Pointer to current state of request.
new_req_status The next state for the request (if successful).
mpe_events_p Pointer to timing structure.
test_params_p Pointer to test_params.
Returns:
0 on success.

int check_isend ( int  myid,
int  wait_status,
int *  flag_p,
MPI_Request *  req_p,
int *  req_status_p,
int  new_req_status,
struct mpe_events_s mpe_events_p,
struct test_params_s test_params_p 
)

Check isend request, shared by both the master and workers. It depends heavily on check_isendrecv().

Parameters:
myid MPI myid.
wait_status Status of the master/worker processes.
flag_p Pointer to request completion.
req_p Pointer to MPI request.
req_status_p Pointer to current state of request.
new_req_status The next state for the request (if successful).
mpe_events_p Pointer to timing structure.
test_params_p Pointer to test_params.
Returns:
0 on success.

static int check_isendrecv ( int  icomm_type,
int  myid,
int  wait_status,
int *  flag_p,
MPI_Request *  req_p,
int *  req_status_p,
int  new_req_status,
struct mpe_events_s mpe_events_p,
struct test_params_s test_params_p 
) [static]

Check either an isend or irecv request to gauge progress. This function is called by check_irecv() and check_isend() functions.

Parameters:
icomm_type Either ISEND or IRECV.
myid MPI myid.
wait_status Status of the master/worker processes.
flag_p Pointer to request completion.
req_p Pointer to MPI request.
req_status_p Pointer to current state of request.
new_req_status The next state for the request (if successful).
mpe_events_p Pointer to timing structure.
test_params_p Pointer to test_params.
Returns:
0 on success.


Variable Documentation

const char* decode_icomm[MAX_ICOMM] [static]

Initial value:

    {
        "ISEND",
        "IRECV"
    }


Generated on Sun May 20 13:10:04 2007 for s3asim by  doxygen 1.4.7