00001 #ifndef _MACHINE_LRTS_H_
00002 #define _MACHINE_LRTS_H_
00003
00004 #include "converse.h"
00005
00006 void LrtsPrepareEnvelope(char *msg, int size);
00007
00008
00009 CmiCommHandle LrtsSendFunc(int destNode, int destPE, int size, char *msg, int mode);
00010
00011 void LrtsSyncListSendFn(int npes, const int *pes, int len, char *msg);
00012 CmiCommHandle LrtsAsyncListSendFn(int npes, const int *pes, int len, char *msg);
00013 void LrtsFreeListSendFn(int npes, const int *pes, int len, char *msg);
00014
00015 #if CMK_PERSISTENT_COMM
00016 void LrtsSendPersistentMsg(PersistentHandle h, int destPE, int size, void *m);
00017 #endif
00018
00019
00020 void LrtsInit(int *argc, char ***argv, int *numNodes, int *myNodeID);
00021
00022 void LrtsPreCommonInit(int everReturn);
00023 void LrtsPostCommonInit(int everReturn);
00024
00025
00026
00027 void LrtsAdvanceCommunication(int whileidle);
00028 void LrtsDrainResources(void);
00029 void LrtsExit(int exitcode=0);
00030 CMK_NORETURN void LrtsAbort(const char *message);
00031
00032 void LrtsPostNonLocal(void);
00033
00034 void* LrtsAlloc(int, int);
00035 void* LrtsRdmaAlloc(int, int);
00036
00037 void LrtsFree(void*);
00038 void LrtsRdmaFree(void*);
00039 void LrtsNotifyIdle(void);
00040
00041 void LrtsBeginIdle(void);
00042 void LrtsStillIdle(void);
00043 void LrtsBarrier(void);
00044
00045
00046 #include "lrtslock.h"
00047
00048 #endif