AdjoinableMPI
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
User-Interface declarations
enum  AMPI_Activity_E { AMPI_PASSIVE =0, AMPI_ACTIVE =1 }
 
typedef enum AMPI_Activity_E AMPI_Activity
 
MPI_Datatype AMPI_ADOUBLE
 
MPI_Datatype AMPI_AFLOAT
 
int AMPI_Init (int *argc, char ***argv)
 
int AMPI_Finalize (int *argc, char ***argv)
 
int AMPI_Buffer_attach (void *buffer, int size)
 
int AMPI_Buffer_detach (void *buffer, int *size)
 
int AMPI_Send (void *buf, int count, MPI_Datatype datatype, int dest, int tag, AMPI_PairedWith pairedWith, MPI_Comm comm)
 
int AMPI_Recv (void *buf, int count, MPI_Datatype datatype, int src, int tag, AMPI_PairedWith pairedWith, MPI_Comm comm, MPI_Status *status)
 
int AMPI_Isend (void *buf, int count, MPI_Datatype datatype, int dest, int tag, AMPI_PairedWith pairedWith, MPI_Comm comm, AMPI_Request *request)
 
int AMPI_Irecv (void *buf, int count, MPI_Datatype datatype, int src, int tag, AMPI_PairedWith pairedWith, MPI_Comm comm, AMPI_Request *request)
 
int AMPI_Bsend (void *buf, int count, MPI_Datatype datatype, int dest, int tag, AMPI_PairedWith pairedWith, MPI_Comm comm)
 
int AMPI_Rsend (void *buf, int count, MPI_Datatype datatype, int dest, int tag, AMPI_PairedWith pairedWith, MPI_Comm comm)
 
int AMPI_Bcast (void *buf, int count, MPI_Datatype datatype, int root, MPI_Comm comm)
 
int AMPI_Reduce (void *sbuf, void *rbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm)
 
int AMPI_Allreduce (void *sbuf, void *rbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
 
int AMPI_Wait (AMPI_Request *request, MPI_Status *status)
 
int AMPI_Waitall (int count, AMPI_Request requests[], MPI_Status statuses[])
 
int AMPI_Awaitall (int count, AMPI_Request requests[], MPI_Status statuses[])
 
int AMPI_Barrier (MPI_Comm comm)
 
int AMPI_Gather (void *sendbuf, int sendcnt, MPI_Datatype sendtype, void *recvbuf, int recvcnt, MPI_Datatype recvtype, int root, MPI_Comm comm)
 
int AMPI_Scatter (void *sendbuf, int sendcnt, MPI_Datatype sendtype, void *recvbuf, int recvcnt, MPI_Datatype recvtype, int root, MPI_Comm comm)
 
int AMPI_Allgather (void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
 
int AMPI_Gatherv (void *sendbuf, int sendcnt, MPI_Datatype sendtype, void *recvbuf, int *recvcnts, int *displs, MPI_Datatype recvtype, int root, MPI_Comm comm)
 
int AMPI_Scatterv (void *sendbuf, int *sendcnts, int *displs, MPI_Datatype sendtype, void *recvbuf, int recvcnt, MPI_Datatype recvtype, int root, MPI_Comm comm)
 
int AMPI_Allgatherv (void *sendbuf, int sendcnt, MPI_Datatype sendtype, void *recvbuf, int *recvcnts, int *displs, MPI_Datatype recvtype, MPI_Comm comm)
 
int AMPI_Win_create (void *base, MPI_Aint size, int disp_unit, MPI_Info info, MPI_Comm comm, AMPI_Win *win)
 
int AMPI_Win_fence (int assert, AMPI_Win win)
 
int AMPI_Win_free (AMPI_Win *win)
 
int AMPI_Get (void *origin_addr, int origin_count, MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, AMPI_Win win)
 
int AMPI_Put (void *origin_addr, int origin_count, MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, AMPI_Win win)
 
int AMPI_Init_NT (int *argc, char ***argv)
 
int AMPI_Finalize_NT (void)
 
int AMPI_Buffer_attach_NT (void *buffer, int size)
 
int AMPI_Buffer_detach_NT (void *buffer, int *size)
 
int AMPI_Type_contiguous_NT (int count, MPI_Datatype oldtype, MPI_Datatype *newtype)
 
int AMPI_Type_create_struct_NT (int count, int array_of_blocklengths[], MPI_Aint array_of_displacements[], MPI_Datatype array_of_types[], MPI_Datatype *newtype)
 
int AMPI_Type_create_resized_NT (MPI_Datatype oldtype, MPI_Aint lb, MPI_Aint extent, MPI_Datatype *newtype)
 
int AMPI_Type_commit_NT (MPI_Datatype *datatype)
 
int AMPI_Op_create_NT (MPI_User_function *function, int commute, MPI_Op *op)
 
int AMPI_Type_free_NT (MPI_Datatype *datatype)
 
int AMPI_Op_free_NT (MPI_Op *op)
 
enum  AMPI_PairedWith_E {
  AMPI_TO_RECV, AMPI_FROM_SEND, AMPI_TO_IRECV_WAIT, AMPI_TO_IRECV_WAITALL,
  AMPI_FROM_ISEND_WAIT, AMPI_FROM_ISEND_WAITALL, AMPI_FROM_BSEND, AMPI_FROM_RSEND
}
 
enum  AMPI_CallCode_E {
  AMPI_RECV, AMPI_SEND, AMPI_IRECV_WAIT, AMPI_IRECV_WAITALL,
  AMPI_ISEND_WAIT, AMPI_ISEND_WAITALL, AMPI_BSEND, AMPI_RSEND,
  AMPI_ISEND, AMPI_IRECV, AMPI_WAIT, AMPI_GATHER,
  AMPI_SCATTER, AMPI_ALLGATHER, AMPI_GATHERV, AMPI_SCATTERV,
  AMPI_ALLGATHERV, AMPI_BCAST, AMPI_REDUCE, AMPI_ALLREDUCE,
  AMPI_BARRIER, AMPI_GET, AMPI_PUT, AMPI_WIN_CREATE,
  AMPI_WIN_FENCE, AMPI_WIN_FREE
}
 
typedef enum AMPI_PairedWith_E AMPI_PairedWith
 
typedef enum AMPI_CallCode_E AMPI_CallCode
 
int AMPI_Comm_size (MPI_Comm comm, int *size)
 
int AMPI_Comm_rank (MPI_Comm comm, int *rank)
 
int AMPI_Get_processor_name (char *name, int *resultlen)
 
int AMPI_Pack_size (int incount, MPI_Datatype datatype, MPI_Comm comm, int *size)
 
enum  AMPI_Request_origin_E { AMPI_SEND_ORIGIN, AMPI_RECV_ORIGIN }
 
typedef enum AMPI_Request_origin_E AMPI_Request_origin
 
typedef struct AMPI_Request_S AMPI_Request
 
int AMPI_Wait_ST (AMPI_Request *request, void *buf, MPI_Status *status)
 

Detailed Description

This set contains all declarations relevant to the user; anything in the source files not listed in this group is internal to AdjoinableMPI or relates to support to be provided by a given AD tool.

Typedef Documentation

Definition at line 31 of file activity.h.

Definition at line 78 of file pairedWith.h.

Definition at line 40 of file pairedWith.h.

typedef struct AMPI_Request_S AMPI_Request

Definition at line 124 of file request.h.

Definition at line 39 of file request.h.

Enumeration Type Documentation

Enumerator
AMPI_PASSIVE 
AMPI_ACTIVE 

Definition at line 23 of file activity.h.

the enumeration for call codes as explained in Pairings

Enumerator
AMPI_RECV 
AMPI_SEND 
AMPI_IRECV_WAIT 
AMPI_IRECV_WAITALL 
AMPI_ISEND_WAIT 
AMPI_ISEND_WAITALL 
AMPI_BSEND 
AMPI_RSEND 
AMPI_ISEND 
AMPI_IRECV 
AMPI_WAIT 
AMPI_GATHER 
AMPI_SCATTER 
AMPI_ALLGATHER 
AMPI_GATHERV 
AMPI_SCATTERV 
AMPI_ALLGATHERV 
AMPI_BCAST 
AMPI_REDUCE 
AMPI_ALLREDUCE 
AMPI_BARRIER 
AMPI_GET 
AMPI_PUT 
AMPI_WIN_CREATE 
AMPI_WIN_FENCE 
AMPI_WIN_FREE 

Definition at line 46 of file pairedWith.h.

the enumeration for communication pairings as explained in Pairings

Enumerator
AMPI_TO_RECV 
AMPI_FROM_SEND 
AMPI_TO_IRECV_WAIT 
AMPI_TO_IRECV_WAITALL 
AMPI_FROM_ISEND_WAIT 
AMPI_FROM_ISEND_WAITALL 
AMPI_FROM_BSEND 
AMPI_FROM_RSEND 

Definition at line 26 of file pairedWith.h.

does the request originate with a send or a receive

Enumerator
AMPI_SEND_ORIGIN 
AMPI_RECV_ORIGIN 

Definition at line 31 of file request.h.

Function Documentation

int AMPI_Allgather ( void *  sendbuf,
int  sendcount,
MPI_Datatype  sendtype,
void *  recvbuf,
int  recvcount,
MPI_Datatype  recvtype,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
sendbuf
sendcount
sendtypesee Datatype consistency
recvbuf
recvcount
recvtypesee Datatype consistency
comm
Returns

Definition at line 318 of file modified.c.

int AMPI_Allgatherv ( void *  sendbuf,
int  sendcnt,
MPI_Datatype  sendtype,
void *  recvbuf,
int *  recvcnts,
int *  displs,
MPI_Datatype  recvtype,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
sendbuf
sendcnt
sendtypesee Datatype consistency
recvbuf
recvcnts
displs
recvtypesee Datatype consistency
comm
Returns

Definition at line 373 of file modified.c.

int AMPI_Allreduce ( void *  sbuf,
void *  rbuf,
int  count,
MPI_Datatype  datatype,
MPI_Op  op,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
sbuf
rbuf
count
datatypesee Datatype consistency
op
comm
Returns

Definition at line 228 of file modified.c.

int AMPI_Awaitall ( int  count,
AMPI_Request  requests[],
MPI_Status  statuses[] 
)
Parameters
count
requestssee Request Type
statuses
Returns

Definition at line 272 of file modified.c.

int AMPI_Barrier ( MPI_Comm  comm)

all parameters as in the MPI standard with exceptions as listed

Parameters
comm
Returns

Definition at line 278 of file modified.c.

int AMPI_Bcast ( void *  buf,
int  count,
MPI_Datatype  datatype,
int  root,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
buf
count
datatypesee Datatype consistency
root
comm
Returns

Definition at line 196 of file modified.c.

int AMPI_Bsend ( void *  buf,
int  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
AMPI_PairedWith  pairedWith,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
buf
count
datatypesee Datatype consistency
dest
tag
pairedWithsee Pairings
comm
Returns

Definition at line 156 of file modified.c.

References AMPI_TO_IRECV_WAIT, and AMPI_TO_RECV.

int AMPI_Buffer_attach ( void *  buffer,
int  size 
)

adjoint needs to detach; signature identical to original MPI call

Definition at line 28 of file modified.c.

int AMPI_Buffer_attach_NT ( void *  buffer,
int  size 
)

this wrapper variant of AMPI_Buffer_attach has no adjoint transformation / trace functionality; to be used outside of the transformed/traced code section

Definition at line 23 of file nt.c.

int AMPI_Buffer_detach ( void *  buffer,
int *  size 
)

adjoint needs to attach; signature identical to original MPI call

Definition at line 35 of file modified.c.

int AMPI_Buffer_detach_NT ( void *  buffer,
int *  size 
)

this wrapper variant of AMPI_Buffer_detach has no adjoint transformation / trace functionality; to be used outside of the transformed/traced code section

Definition at line 30 of file nt.c.

int AMPI_Comm_rank ( MPI_Comm  comm,
int *  rank 
)

simple wrapper; signature is identical to MPI original

Definition at line 18 of file passThrough.c.

int AMPI_Comm_size ( MPI_Comm  comm,
int *  size 
)

simple wrapper; signature is identical to MPI original

Definition at line 12 of file passThrough.c.

int AMPI_Finalize ( int *  argc,
char ***  argv 
)

adjoint needs to MPI_Init; signature identical to AMPI_Init (adjoint symmetry)

Definition at line 23 of file modified.c.

int AMPI_Finalize_NT ( void  )

this wrapper variant of AMPI_Finalize has no adjoint transformation / trace functionality; to be used outside of the transformed/traced code section

Definition at line 18 of file nt.c.

References ADTOOL_AMPI_cleanupTypes(), releaseDTypeData(), and releaseUOpData().

Referenced by ampi_finalize_nt_().

Here is the call graph for this function:

int AMPI_Gather ( void *  sendbuf,
int  sendcnt,
MPI_Datatype  sendtype,
void *  recvbuf,
int  recvcnt,
MPI_Datatype  recvtype,
int  root,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
sendbuf
sendcnt
sendtypesee Datatype consistency
recvbuf
recvcnt
recvtypesee Datatype consistency
root
comm
Returns

Definition at line 282 of file modified.c.

int AMPI_Gatherv ( void *  sendbuf,
int  sendcnt,
MPI_Datatype  sendtype,
void *  recvbuf,
int *  recvcnts,
int *  displs,
MPI_Datatype  recvtype,
int  root,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
sendbuf
sendcnt
sendtypesee Datatype consistency
recvbuf
recvcnts
displs
recvtypesee Datatype consistency
root
comm
Returns

Definition at line 334 of file modified.c.

int AMPI_Get ( void *  origin_addr,
int  origin_count,
MPI_Datatype  origin_datatype,
int  target_rank,
MPI_Aint  target_disp,
int  target_count,
MPI_Datatype  target_datatype,
AMPI_Win  win 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
origin_addr
origin_count
origin_datatypesee Datatype consistency
target_rank
target_disp
target_count
target_datatypesee Datatype consistency
winactive window
Returns
int AMPI_Get_processor_name ( char *  name,
int *  resultlen 
)

simple wrapper; signature is identical to MPI original

Definition at line 24 of file passThrough.c.

int AMPI_Init ( int *  argc,
char ***  argv 
)

adjoint needs to MPI_Finalize; signature identical to original MPI call

Definition at line 18 of file modified.c.

int AMPI_Init_NT ( int *  argc,
char ***  argv 
)

this wrapper variant of AMPI_Init has no adjoint transformation / trace functionality; to be used outside of the transformed/traced code section

Definition at line 12 of file nt.c.

References ADTOOL_AMPI_FPCollection::adjointMax_fp, ADTOOL_AMPI_FPCollection::adjointMin_fp, ADTOOL_AMPI_FPCollection::adjointMultiply_fp, ADTOOL_AMPI_adjointMax(), ADTOOL_AMPI_adjointMin(), ADTOOL_AMPI_adjointMultiply(), ADTOOL_AMPI_allocateTempActiveBuf(), ADTOOL_AMPI_allocateTempBuf(), ADTOOL_AMPI_BW_rawType(), ADTOOL_AMPI_cleanupTypes(), ADTOOL_AMPI_COMM_WORLD_SHADOW, ADTOOL_AMPI_copyActiveBuf(), ADTOOL_AMPI_createWinMap(), ADTOOL_AMPI_divideAdjoint(), ADTOOL_AMPI_equalAdjoints(), ADTOOL_AMPI_FW_rawType(), ADTOOL_AMPI_getAdjointCount(), ADTOOL_AMPI_getShadowComm(), ADTOOL_AMPI_getWinSize(), ADTOOL_AMPI_incrementAdjoint(), ADTOOL_AMPI_isActiveType(), ADTOOL_AMPI_mapBufForAdjoint(), ADTOOL_AMPI_multiplyAdjoint(), ADTOOL_AMPI_nullifyAdjoint(), ADTOOL_AMPI_packDType(), ADTOOL_AMPI_pop_AMPI_Request(), ADTOOL_AMPI_pop_AMPI_Win(), ADTOOL_AMPI_pop_AMPI_WinRequest(), ADTOOL_AMPI_pop_CallCode(), ADTOOL_AMPI_pop_comm(), ADTOOL_AMPI_pop_request(), ADTOOL_AMPI_popBcastInfo(), ADTOOL_AMPI_popBuffer(), ADTOOL_AMPI_popDoubleArray(), ADTOOL_AMPI_popGScommSizeForRootOrNull(), ADTOOL_AMPI_popGSinfo(), ADTOOL_AMPI_popGSVinfo(), ADTOOL_AMPI_popOSinfo(), ADTOOL_AMPI_popReduceCountAndType(), ADTOOL_AMPI_popReduceInfo(), ADTOOL_AMPI_popSRinfo(), ADTOOL_AMPI_push_AMPI_Request(), ADTOOL_AMPI_push_AMPI_Win(), ADTOOL_AMPI_push_AMPI_WinRequest(), ADTOOL_AMPI_push_CallCode(), ADTOOL_AMPI_push_comm(), ADTOOL_AMPI_push_request(), ADTOOL_AMPI_pushBcastInfo(), ADTOOL_AMPI_pushBuffer(), ADTOOL_AMPI_pushDoubleArray(), ADTOOL_AMPI_pushGSinfo(), ADTOOL_AMPI_pushGSVinfo(), ADTOOL_AMPI_pushOSinfo(), ADTOOL_AMPI_pushReduceInfo(), ADTOOL_AMPI_pushSRinfo(), ADTOOL_AMPI_rawAdjointData(), ADTOOL_AMPI_rawData(), ADTOOL_AMPI_rawDataV(), ADTOOL_AMPI_releaseAdjointTempBuf(), ADTOOL_AMPI_releaseTempActiveBuf(), ADTOOL_AMPI_setAdjointCount(), ADTOOL_AMPI_setAdjointCountAndTempBuf(), ADTOOL_AMPI_setBufForAdjoint(), ADTOOL_AMPI_setupTypes(), ADTOOL_AMPI_setWinAdjointCount(), ADTOOL_AMPI_setWinAdjointCountAndTempBuf(), ADTOOL_AMPI_syncAdjointWin(), ADTOOL_AMPI_tangentMax(), ADTOOL_AMPI_tangentMin(), ADTOOL_AMPI_tangentMultiply(), ADTOOL_AMPI_Turn(), ADTOOL_AMPI_unpackDType(), ADTOOL_AMPI_writeData(), ADTOOL_AMPI_writeDataV(), ADTOOL_AMPI_writeWinData(), ADTOOL_AMPI_FPCollection::allocateTempActiveBuf_fp, ADTOOL_AMPI_FPCollection::allocateTempBuf_fp, ADTOOL_AMPI_FPCollection::BW_rawType_fp, ADTOOL_AMPI_FPCollection::cleanupTypes_fp, ADTOOL_AMPI_FPCollection::copyActiveBuf_fp, ADTOOL_AMPI_FPCollection::createWinMap_fp, ADTOOL_AMPI_FPCollection::divideAdjoint_fp, ADTOOL_AMPI_FPCollection::equalAdjoints_fp, ADTOOL_AMPI_FPCollection::FW_rawType_fp, ADTOOL_AMPI_FPCollection::getAdjointCount_fp, ADTOOL_AMPI_FPCollection::getShadowComm_fp, ADTOOL_AMPI_FPCollection::getWinSize_fp, ADTOOL_AMPI_FPCollection::incrementAdjoint_fp, ADTOOL_AMPI_FPCollection::isActiveType_fp, ADTOOL_AMPI_FPCollection::mapBufForAdjoint_fp, ADTOOL_AMPI_FPCollection::multiplyAdjoint_fp, ADTOOL_AMPI_FPCollection::nullifyAdjoint_fp, ourADTOOL_AMPI_FPCollection, ADTOOL_AMPI_FPCollection::packDType_fp, ADTOOL_AMPI_FPCollection::pop_AMPI_Request_fp, ADTOOL_AMPI_FPCollection::pop_AMPI_Win_fp, ADTOOL_AMPI_FPCollection::pop_AMPI_WinRequest_fp, ADTOOL_AMPI_FPCollection::pop_CallCode_fp, ADTOOL_AMPI_FPCollection::pop_comm_fp, ADTOOL_AMPI_FPCollection::pop_request_fp, ADTOOL_AMPI_FPCollection::popBcastInfo_fp, ADTOOL_AMPI_FPCollection::popBuffer_fp, ADTOOL_AMPI_FPCollection::popDoubleArray_fp, ADTOOL_AMPI_FPCollection::popGScommSizeForRootOrNull_fp, ADTOOL_AMPI_FPCollection::popGSinfo_fp, ADTOOL_AMPI_FPCollection::popGSVinfo_fp, ADTOOL_AMPI_FPCollection::popOSinfo_fp, ADTOOL_AMPI_FPCollection::popReduceCountAndType_fp, ADTOOL_AMPI_FPCollection::popReduceInfo_fp, ADTOOL_AMPI_FPCollection::popSRinfo_fp, ADTOOL_AMPI_FPCollection::push_AMPI_Request_fp, ADTOOL_AMPI_FPCollection::push_AMPI_Win_fp, ADTOOL_AMPI_FPCollection::push_AMPI_WinRequest_fp, ADTOOL_AMPI_FPCollection::push_CallCode_fp, ADTOOL_AMPI_FPCollection::push_comm_fp, ADTOOL_AMPI_FPCollection::push_request_fp, ADTOOL_AMPI_FPCollection::pushBcastInfo_fp, ADTOOL_AMPI_FPCollection::pushBuffer_fp, ADTOOL_AMPI_FPCollection::pushDoubleArray_fp, ADTOOL_AMPI_FPCollection::pushGSinfo_fp, ADTOOL_AMPI_FPCollection::pushGSVinfo_fp, ADTOOL_AMPI_FPCollection::pushOSinfo_fp, ADTOOL_AMPI_FPCollection::pushReduceInfo_fp, ADTOOL_AMPI_FPCollection::pushSRinfo_fp, ADTOOL_AMPI_FPCollection::rawAdjointData_fp, ADTOOL_AMPI_FPCollection::rawData_fp, ADTOOL_AMPI_FPCollection::rawDataV_fp, ADTOOL_AMPI_FPCollection::releaseAdjointTempBuf_fp, ADTOOL_AMPI_FPCollection::releaseTempActiveBuf_fp, ADTOOL_AMPI_FPCollection::setAdjointCount_fp, ADTOOL_AMPI_FPCollection::setAdjointCountAndTempBuf_fp, ADTOOL_AMPI_FPCollection::setBufForAdjoint_fp, ADTOOL_AMPI_FPCollection::setupTypes_fp, ADTOOL_AMPI_FPCollection::setWinAdjointCount_fp, ADTOOL_AMPI_FPCollection::setWinAdjointCountAndTempBuf_fp, ADTOOL_AMPI_FPCollection::syncAdjointWin_fp, ADTOOL_AMPI_FPCollection::tangentMax_fp, ADTOOL_AMPI_FPCollection::tangentMin_fp, ADTOOL_AMPI_FPCollection::tangentMultiply_fp, ADTOOL_AMPI_FPCollection::Turn_fp, ADTOOL_AMPI_FPCollection::unpackDType_fp, ADTOOL_AMPI_FPCollection::writeData_fp, ADTOOL_AMPI_FPCollection::writeDataV_fp, and ADTOOL_AMPI_FPCollection::writeWinData_fp.

Referenced by ampi_init_nt_().

int AMPI_Irecv ( void *  buf,
int  count,
MPI_Datatype  datatype,
int  src,
int  tag,
AMPI_PairedWith  pairedWith,
MPI_Comm  comm,
AMPI_Request request 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
buf
count
datatypesee Datatype consistency
src
tag
pairedWithsee Pairings
comm
requestsee Request Type
Returns

Definition at line 123 of file modified.c.

References AMPI_FROM_BSEND, AMPI_FROM_ISEND_WAIT, AMPI_FROM_ISEND_WAITALL, AMPI_FROM_RSEND, AMPI_FROM_SEND, and AMPI_Request_S::plainRequest.

Referenced by ampi_irecv_().

int AMPI_Isend ( void *  buf,
int  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
AMPI_PairedWith  pairedWith,
MPI_Comm  comm,
AMPI_Request request 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
buf
count
datatypesee Datatype consistency
dest
tag
pairedWithsee Pairings
comm
requestsee Request Type
Returns

Definition at line 94 of file modified.c.

References AMPI_TO_IRECV_WAIT, AMPI_TO_IRECV_WAITALL, AMPI_TO_RECV, and AMPI_Request_S::plainRequest.

Referenced by ampi_isend_().

int AMPI_Op_create_NT ( MPI_User_function *  function,
int  commute,
MPI_Op *  op 
)

Definition at line 36 of file nt.c.

References addUOpData(), and getUOpData().

Here is the call graph for this function:

int AMPI_Op_free_NT ( MPI_Op *  op)

Definition at line 46 of file nt.c.

int AMPI_Pack_size ( int  incount,
MPI_Datatype  datatype,
MPI_Comm  comm,
int *  size 
)

simple wrapper; signature is identical to MPI original

Definition at line 30 of file passThrough.c.

int AMPI_Put ( void *  origin_addr,
int  origin_count,
MPI_Datatype  origin_datatype,
int  target_rank,
MPI_Aint  target_disp,
int  target_count,
MPI_Datatype  target_datatype,
AMPI_Win  win 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
origin_addr
origin_count
origin_datatypesee Datatype consistency
target_rank
target_disp
target_count
target_datatypesee Datatype consistency
winactive window
Returns
int AMPI_Recv ( void *  buf,
int  count,
MPI_Datatype  datatype,
int  src,
int  tag,
AMPI_PairedWith  pairedWith,
MPI_Comm  comm,
MPI_Status *  status 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
buf
count
datatypesee Datatype consistency
src
tag
pairedWithsee Pairings
comm
status
Returns

Definition at line 65 of file modified.c.

References AMPI_FROM_BSEND, AMPI_FROM_ISEND_WAIT, AMPI_FROM_ISEND_WAITALL, AMPI_FROM_RSEND, and AMPI_FROM_SEND.

Referenced by ampi_recv_().

int AMPI_Reduce ( void *  sbuf,
void *  rbuf,
int  count,
MPI_Datatype  datatype,
MPI_Op  op,
int  root,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
sbuf
rbuf
count
datatypesee Datatype consistency
op
root
comm
Returns

Definition at line 209 of file modified.c.

int AMPI_Rsend ( void *  buf,
int  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
AMPI_PairedWith  pairedWith,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
buf
count
datatypesee Datatype consistency
dest
tag
pairedWithsee Pairings
comm
Returns

Definition at line 176 of file modified.c.

References AMPI_TO_IRECV_WAIT, and AMPI_TO_RECV.

int AMPI_Scatter ( void *  sendbuf,
int  sendcnt,
MPI_Datatype  sendtype,
void *  recvbuf,
int  recvcnt,
MPI_Datatype  recvtype,
int  root,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
sendbuf
sendcnt
sendtypesee Datatype consistency
recvbuf
recvcnt
recvtypesee Datatype consistency
root
comm
Returns

Definition at line 300 of file modified.c.

int AMPI_Scatterv ( void *  sendbuf,
int *  sendcnts,
int *  displs,
MPI_Datatype  sendtype,
void *  recvbuf,
int  recvcnt,
MPI_Datatype  recvtype,
int  root,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
sendbuf
sendcnts
displs
sendtypesee Datatype consistency
recvbuf
recvcnt
recvtypesee Datatype consistency
root
comm
Returns

Definition at line 354 of file modified.c.

int AMPI_Send ( void *  buf,
int  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
AMPI_PairedWith  pairedWith,
MPI_Comm  comm 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
buf
count
datatypesee Datatype consistency
dest
tag
pairedWithsee Pairings
comm
Returns

Definition at line 42 of file modified.c.

References AMPI_TO_IRECV_WAIT, AMPI_TO_IRECV_WAITALL, and AMPI_TO_RECV.

Referenced by ampi_send_().

int AMPI_Type_commit_NT ( MPI_Datatype *  datatype)

Definition at line 165 of file nt.c.

References derivedTypeIdx(), getDTypeData(), and isDerivedType().

Here is the call graph for this function:

int AMPI_Type_contiguous_NT ( int  count,
MPI_Datatype  oldtype,
MPI_Datatype *  newtype 
)
int AMPI_Type_create_resized_NT ( MPI_Datatype  oldtype,
MPI_Aint  lb,
MPI_Aint  extent,
MPI_Datatype *  newtype 
)

Definition at line 171 of file nt.c.

References derivedTypeData::derived_types, derivedTypeIdx(), derivedTypeData::extents, getDTypeData(), isDerivedType(), and derivedTypeData::lbs.

Here is the call graph for this function:

int AMPI_Type_create_struct_NT ( int  count,
int  array_of_blocklengths[],
MPI_Aint  array_of_displacements[],
MPI_Datatype  array_of_types[],
MPI_Datatype *  newtype 
)
int AMPI_Type_free_NT ( MPI_Datatype *  datatype)

Definition at line 206 of file nt.c.

References derivedTypeIdx(), getDTypeData(), and isDerivedType().

Here is the call graph for this function:

int AMPI_Wait ( AMPI_Request request,
MPI_Status *  status 
)

before we start reverse we need to make sure there are no pending requests in our userIF bookkeeping

Definition at line 242 of file modified.c.

References AMPI_Request_S::plainRequest.

Referenced by ampi_wait_().

int AMPI_Wait_ST ( AMPI_Request request,
void *  buf,
MPI_Status *  status 
)

variant of AMPI_Wait with an extra parameter

Parameters
requestfollows the semantics of MPI_Wait
bufis the buffer that was passed to the corresponding AMPI_Isend or AMPI_Irecv call; see Nonblocking Communication and Fortran Compatibility for a discussion of the necessity of the buf parameter.
statusfollows the semantics of MPI_Wait

Definition at line 12 of file st.c.

References AMPI_Request_S::plainRequest.

int AMPI_Waitall ( int  count,
AMPI_Request  requests[],
MPI_Status  statuses[] 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
count
requestssee Request Type
statuses
Returns

Definition at line 253 of file modified.c.

References AMPI_Request_stack::count.

int AMPI_Win_create ( void *  base,
MPI_Aint  size,
int  disp_unit,
MPI_Info  info,
MPI_Comm  comm,
AMPI_Win win 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
base
size
disp_unit
info
comm
winactive window
Returns
int AMPI_Win_fence ( int  assert,
AMPI_Win  win 
)

all parameters as in the MPI standard with exceptions as listed

Parameters
assert
winactive window
Returns
int AMPI_Win_free ( AMPI_Win win)

all parameters as in the MPI standard with exceptions as listed

Parameters
winactive window
Returns

Variable Documentation

MPI_Datatype AMPI_ADOUBLE

active variant of the predefined MPI_DOUBLE

Definition at line 167 of file modified.h.

Referenced by ADTOOL_AMPI_BW_rawType(), ADTOOL_AMPI_FW_rawType(), ADTOOL_AMPI_isActiveType(), and ADTOOL_AMPI_setupTypes().

MPI_Datatype AMPI_AFLOAT

active variant of the predefined MPI_FLOAT

Definition at line 19 of file modified.c.

Referenced by ADTOOL_AMPI_BW_rawType(), ADTOOL_AMPI_FW_rawType(), ADTOOL_AMPI_isActiveType(), and ADTOOL_AMPI_setupTypes().