arch/vmi/machine.h File Reference

VMI machine layer. More...

Go to the source code of this file.

Data Structures

struct  CMI_VMI_Memory_Chunk_T
struct  CMI_VMI_Eager_Short_Slot_Footer_T
struct  CMI_VMI_CRM_Register_Message_T
struct  CMI_VMI_CRM_Nodeblock_Message_T
struct  CMI_VMI_Charmrun_Message_Header_T
struct  CMI_VMI_Charmrun_Register_Message_T
struct  CMI_VMI_Charmrun_Nodeblock_Message_T
struct  CMI_VMI_Connect_Message_T
struct  CMI_VMI_Barrier_Message_T
struct  CMI_VMI_Persistent_Request_Message_T
struct  CMI_VMI_Credit_Message_T
struct  CMI_VMI_Latency_Vector_Request_Message_T
struct  CMI_VMI_Latency_Vector_Reply_Message_T
struct  CMI_VMI_Cluster_Mapping_Message_T
struct  CMI_VMI_Publish_Message_T
struct  CMI_VMI_Send_Handle_Stream_T
struct  CMI_VMI_Send_Handle_RDMAGet_T
struct  CMI_VMI_Send_Handle_RDMABroadcast_T
struct  CMI_VMI_Send_Handle_Eager_Short_T
struct  CMI_VMI_Send_Handle_Eager_Long_T
struct  CMI_VMI_Send_Handle_T
struct  CMI_VMI_Receive_Handle_RDMAGet_T
struct  CMI_VMI_Receive_Handle_Eager_Short_T
struct  CMI_VMI_Receive_Handle_Eager_Long_T
struct  CMI_VMI_Receive_Handle_T
struct  CMI_VMI_Handle_T
struct  CMI_VMI_Process_T
struct  CMI_VMI_Grid_Object_T
union  CMI_VMI_Envelope_utype
struct  CMI_VMI_Envelope_utype::s_chare
struct  CMI_VMI_Envelope_utype::s_group
struct  CMI_VMI_Envelope_utype::s_array
struct  CMI_VMI_Envelope_utype::s_roData
struct  CMI_VMI_Envelope_utype::s_roMsg
struct  CMI_VMI_Envelope_sattribs
struct  CMI_VMI_Envelope
enum  CMI_VMI_Publish_Type_T { CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_PUBLISH_TYPE_EAGER_SHORT, CMI_VMI_PUBLISH_TYPE_EAGER_LONG }
enum  CMI_VMI_Handle_Type_T { CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_HANDLE_TYPE_RECEIVE }
enum  CMI_VMI_Send_Handle_Type_T {
  CMI_VMI_SEND_HANDLE_TYPE_STREAM, CMI_VMI_SEND_HANDLE_TYPE_RDMAGET, CMI_VMI_SEND_HANDLE_TYPE_RDMABROADCAST, CMI_VMI_SEND_HANDLE_TYPE_EAGER_SHORT,
  CMI_VMI_SEND_HANDLE_TYPE_EAGER_LONG
}
enum  CMI_VMI_Message_Disposition_T { CMI_VMI_MESSAGE_DISPOSITION_NONE, CMI_VMI_MESSAGE_DISPOSITION_FREE, CMI_VMI_MESSAGE_DISPOSITION_ENQUEUE }
enum  CMI_VMI_Receive_Handle_Type_T { CMI_VMI_RECEIVE_HANDLE_TYPE_RDMAGET, CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_SHORT, CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_LONG }
enum  CMI_VMI_Connection_State_T {
  CMI_VMI_CONNECTION_CONNECTING, CMI_VMI_CONNECTION_CONNECTED, CMI_VMI_CONNECTION_DISCONNECTING, CMI_VMI_CONNECTION_DISCONNECTED,
  CMI_VMI_CONNECTION_ERROR
}
void ConverseInit (int argc, char **argv, CmiStartFn start_function, int user_calls_scheduler, int init_returns)
void ConverseExit ()
void CmiAbort (const char *message)
 Serial version of common Charm++ routines:.
void CmiNotifyIdle ()
void CmiMemLock ()
void CmiMemUnlock ()
void CmiPrintf (const char *format,...)
void CmiError (const char *format,...)
int CmiScanf (const char *format,...)
int CmiBarrier ()
int CmiBarrierZero ()
void CmiSyncSendFn (int destrank, int msgsize, char *msg)
CmiCommHandle CmiAsyncSendFn (int destrank, int msgsize, char *msg)
void CmiFreeSendFn (int destrank, int msgsize, char *msg)
void CmiSyncBroadcastFn (int msgsize, char *msg)
CmiCommHandle CmiAsyncBroadcastFn (int msgsize, char *msg)
void CmiFreeBroadcastFn (int msgsize, char *msg)
void CmiSyncBroadcastAllFn (int msgsize, char *msg)
CmiCommHandle CmiAsyncBroadcastAllFn (int msgsize, char *msg)
void CmiFreeBroadcastAllFn (int msgsize, char *msg)
int CmiAsyncMsgSent (CmiCommHandle commhandle)
int CmiAllAsyncMsgsSent ()
void CmiReleaseCommHandle (CmiCommHandle commhandle)
void * CmiGetNonLocal ()
void CmiProbeLatencies ()
unsigned long CmiGetLatency (int process1, int process2)
int CmiGetCluster (int process)
int CmiGridQueueGetInterval ()
int CmiGridQueueGetThreshold ()
void CmiGridQueueRegister (int gid, int nInts, int index1, int index2, int index3)
void CmiGridQueueDeregister (int gid, int nInts, int index1, int index2, int index3)
void CmiGridQueueDeregisterAll ()
int CmiGridQueueLookup (int gid, int nInts, int index1, int index2, int index3)
int CmiGridQueueLookupMsg (char *msg)
int CMI_VMI_Grid_Objects_Compare (const void *ptr1, const void *ptr2)
void CmiPersistentInit ()
PersistentHandle CmiCreatePersistent (int destrank, int maxsize)
void CmiUsePersistentHandle (PersistentHandle *handle_array, int array_size)
void CmiDestroyPersistent (PersistentHandle phandle)
void CmiDestroyAllPersistent ()
PersistentReq CmiCreateReceiverPersistent (int maxsize)
PersistentHandle CmiRegisterReceivePersistent (PersistentReq request)
void CMI_VMI_Read_Environment ()
int CMI_VMI_Startup_CRM ()
int CMI_VMI_Startup_Charmrun ()
int CMI_VMI_Initialize_VMI ()
int CMI_VMI_Terminate_VMI ()
int CMI_VMI_Socket_Send (int sockfd, const void *msg, int size)
int CMI_VMI_Socket_Receive (int sockfd, void *msg, int size)
int CMI_VMI_Open_Connections ()
int CMI_VMI_Open_Connection (int remote_rank, char *remote_key, PVMI_BUFFER connect_message_buffer)
VMI_CONNECT_RESPONSE CMI_VMI_Connection_Handler (PVMI_CONNECT connection, PVMI_SLAB slab, ULONG data_size)
void CMI_VMI_Connection_Response_Handler (PVOID context, PVOID response, USHORT size, PVOID handle, VMI_CONNECT_RESPONSE remote_status)
int CMI_VMI_Close_Connections ()
void CMI_VMI_Disconnection_Handler (PVMI_CONNECT connection)
void CMI_VMI_Disconnection_Response_Handler (PVMI_CONNECT connection, PVOID context, VMI_STATUS remote_status)
void CMI_VMI_Reply_Latencies (int sourcerank)
void CMI_VMI_Compute_Cluster_Mapping ()
void CMI_VMI_Distribute_Cluster_Mapping ()
void CMI_VMI_Wait_Cluster_Mapping ()
void * CMI_VMI_CmiAlloc (int request_size)
void CMI_VMI_CmiFree (void *ptr)
PVMI_CACHE_ENTRY CMI_VMI_CacheEntry_From_Context (void *context)
CMI_VMI_Handle_TCMI_VMI_Handle_Allocate ()
void CMI_VMI_Handle_Deallocate (CMI_VMI_Handle_T *handle)
void CMI_VMI_Eager_Short_Setup (int sender_rank)
void CMI_VMI_Eager_Long_Setup (int sender_rank, int maxsize)
VMI_RECV_STATUS CMI_VMI_Stream_Notification_Handler (PVMI_CONNECT connection, PVMI_STREAM_RECV stream, VMI_STREAM_COMMAND command, PVOID context, PVMI_SLAB slab)
void CMI_VMI_Stream_Completion_Handler (PVOID context, VMI_STATUS remote_status)
void CMI_VMI_RDMA_Publish_Notification_Handler (PVMI_CONNECT connection, PVMI_REMOTE_BUFFER remote_buffer, PVMI_SLAB publish_data, ULONG publish_data_size)
void CMI_VMI_RDMA_Publish_Completion_Handler (PVOID context, VMI_STATUS remote_status)
void CMI_VMI_RDMA_Put_Notification_Handler (PVMI_CONNECT connection, UINT32 rdma_size, UINT32 context, VMI_STATUS remote_status)
void CMI_VMI_RDMA_Put_Completion_Handler (PVMI_RDMA_OP rdmaop, PVOID context, VMI_STATUS remote_status)
void CMI_VMI_RDMA_Get_Notification_Handler (PVMI_CONNECT connection, UINT32 context, VMI_STATUS remote_status)
void CMI_VMI_RDMA_Get_Completion_Handler (PVMI_RDMA_OP rdmaop, PVOID context, VMI_STATUS remote_status)
int CMI_VMI_Spanning_Children_Count (char *msg)
void CMI_VMI_Send_Spanning_Children (int msgsize, char *msg)
void CMI_VMI_Common_Receive ()


Detailed Description

VMI machine layer.

Definition in file machine.h.


Enumeration Type Documentation

enum CMI_VMI_Publish_Type_T

Enumerator:
CMI_VMI_PUBLISH_TYPE_GET 
CMI_VMI_PUBLISH_TYPE_EAGER_SHORT 
CMI_VMI_PUBLISH_TYPE_EAGER_LONG 

Definition at line 327 of file machine.h.

enum CMI_VMI_Handle_Type_T

Enumerator:
CMI_VMI_HANDLE_TYPE_SEND 
CMI_VMI_HANDLE_TYPE_RECEIVE 

Definition at line 346 of file machine.h.

enum CMI_VMI_Send_Handle_Type_T

Enumerator:
CMI_VMI_SEND_HANDLE_TYPE_STREAM 
CMI_VMI_SEND_HANDLE_TYPE_RDMAGET 
CMI_VMI_SEND_HANDLE_TYPE_RDMABROADCAST 
CMI_VMI_SEND_HANDLE_TYPE_EAGER_SHORT 
CMI_VMI_SEND_HANDLE_TYPE_EAGER_LONG 

Definition at line 352 of file machine.h.

enum CMI_VMI_Message_Disposition_T

Enumerator:
CMI_VMI_MESSAGE_DISPOSITION_NONE 
CMI_VMI_MESSAGE_DISPOSITION_FREE 
CMI_VMI_MESSAGE_DISPOSITION_ENQUEUE 

Definition at line 361 of file machine.h.

enum CMI_VMI_Receive_Handle_Type_T

Enumerator:
CMI_VMI_RECEIVE_HANDLE_TYPE_RDMAGET 
CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_SHORT 
CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_LONG 

Definition at line 415 of file machine.h.

enum CMI_VMI_Connection_State_T

Enumerator:
CMI_VMI_CONNECTION_CONNECTING 
CMI_VMI_CONNECTION_CONNECTED 
CMI_VMI_CONNECTION_DISCONNECTING 
CMI_VMI_CONNECTION_DISCONNECTED 
CMI_VMI_CONNECTION_ERROR 

Definition at line 480 of file machine.h.


Function Documentation

void ConverseInit ( int  argc,
char **  argv,
CmiStartFn  start_function,
int  user_calls_scheduler,
int  init_returns 
)

Definition at line 1557 of file machine.c.

References _Cmi_mynode, _Cmi_mynodesize, _Cmi_mype, _Cmi_numnodes, _Cmi_numpes, blockingReceiveFlag, CcdCallOnConditionKeep(), CdsFifo_Create(), Cmi_argv, Cmi_dim, Cmi_nodestart, Cmi_startfn, Cmi_usrsched, CMI_VMI_AsyncMsgCount, CMI_VMI_Barrier_Count, CMI_VMI_Cluster, CMI_VMI_Cluster_Mapping_Received, CMI_VMI_Compute_Cluster_Mapping(), CMI_VMI_CONNECTION_DISCONNECTED, CMI_VMI_Connection_Timeout, CMI_VMI_Distribute_Cluster_Mapping(), CMI_VMI_Eager_Interval, CMI_VMI_Eager_Long_Buffer_Size, CMI_VMI_Eager_Long_Buffers, CMI_VMI_Eager_Protocol, CMI_VMI_Eager_Short_Message_Boundary, CMI_VMI_Eager_Short_Pollset, CMI_VMI_Eager_Short_Pollset_Size, CMI_VMI_Eager_Short_Pollset_Size_Maximum, CMI_VMI_Eager_Short_Slots, CMI_VMI_Eager_Threshold, CMI_VMI_Grid_Objects, CMI_VMI_Grid_Objects_Index, CMI_VMI_Grid_Queue, CMI_VMI_Grid_Queue_Interval, CMI_VMI_Grid_Queue_Maximum, CMI_VMI_Grid_Queue_Threshold, CMI_VMI_Handles, CMI_VMI_Initialize_VMI(), CMI_VMI_Maximum_Handles, CMI_VMI_Medium_Message_Boundary, CMI_VMI_Memory_Pool, CMI_VMI_Message_Receive_Count, CMI_VMI_Next_Handle, CMI_VMI_Open_Connections(), CMI_VMI_Probe_Clusters, CMI_VMI_Processes, CMI_VMI_Program_Key, CMI_VMI_Read_Environment(), CMI_VMI_Small_Message_Boundary, CMI_VMI_Startup_Charmrun(), CMI_VMI_Startup_CRM(), CMI_VMI_Startup_Type, CMI_VMI_Terminate_VMI_Hack, CMI_VMI_Wait_Cluster_Mapping(), CMI_VMI_WAN_Latency, CmiAbort(), CmiBarrier(), CmiGetArgc(), CmiGetArgFlag(), CmiGetArgInt(), CmiNodeStateInit(), CmiNotifyIdle(), CmiPrintf(), CmiProbeLatencies(), CmiStartThreads(), CmiTimerInit(), ConverseCommonInit(), ConverseExit(), ConverseRunPE(), CsdScheduler(), CthInit(), elan_base, elan_port, elan_q, enableBufferPooling, enableGetBasedSend, gk_head_ptr1, gk_head_ptr2, gk_tail_ptr1, gk_tail_ptr2, gk_timeout1, gk_timeout2, localMidBufferQueue, localSmallBufferQueue, malloc(), MID_MESSAGE_SIZE, midQSize, msgBuf, n, PCQueueCreate(), printf(), request_bytes, request_max, sleep(), SMALL_MESSAGE_SIZE, smallQSize, and value.

void ConverseExit (  ) 

Definition at line 1257 of file machine.c.

References _Cmi_numpes, CdsFifo_Destroy(), CMI_VMI_Charmrun_Socket, CMI_VMI_Close_Connections(), CMI_VMI_Eager_Short_Pollset, CMI_VMI_Grid_Objects, CMI_VMI_Handles, CMI_VMI_Processes, CMI_VMI_Program_Key, CMI_VMI_Socket_Send(), CMI_VMI_Startup_Type, CMI_VMI_Terminate_VMI(), CMI_VMI_Terminate_VMI_Hack, CMI_VMI_Username, CmiAllAsyncMsgsSent(), CmiBarrier(), CmiMyPe(), CmiPrintf(), CmiReleaseSentMessages(), ConverseCommonExit(), cur_unsent, elan_base, ElanSendQueuedMessages(), free(), CMI_VMI_Charmrun_Message_Header_T::msg_len, CMI_VMI_Charmrun_Message_Header_T::msg_type, PumpMsgs(), registerElanEvents(), and status().

void CmiAbort ( const char *  message  ) 

Serial version of common Charm++ routines:.

Currently only used for FEM_ALONE mode.

Orion Sky Lawlor, olawlor@acm.org, 2003/8/15

Definition at line 8 of file charm_standalone.C.

References abort(), and printf().

void CmiMemLock (  ) 

Definition at line 259 of file machine.c.

void CmiMemUnlock (  ) 

Definition at line 260 of file machine.c.

int CmiScanf ( const char *  format,
  ... 
)

Definition at line 674 of file machine.c.

References CMI_VMI_Startup_Type, and CmiAbort().

void CmiSyncSendFn ( int  destrank,
int  msgsize,
char *  msg 
)

Definition at line 847 of file machine.c.

References _Cmi_mype, CMI_VMI_Send_Handle_Eager_Short_T::cacheentry, CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_AsyncMsgCount, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Eager_Protocol, CMI_VMI_Eager_Short_Message_Boundary, CMI_VMI_Handle_Allocate(), CMI_VMI_Handle_Deallocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_Medium_Message_Boundary, CMI_VMI_MESSAGE_DISPOSITION_NONE, CMI_VMI_Processes, CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_RDMA_Put_Completion_Handler(), CMI_VMI_SEND_HANDLE_TYPE_RDMAGET, CmiAlloc(), CmiAsyncSendFn(), CmiGetState(), CmiSendSelf(), context, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::data, CMI_VMI_Send_Handle_T::eager_long, CMI_VMI_Send_Handle_T::eager_short, CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::index, CMI_VMI_Send_Handle_Eager_Long_T::maxsize, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Eager_Short_Slot_Footer_T::msgsize, CMI_VMI_Handle_T::msgsize, CMI_VMI_Send_Handle_Eager_Short_T::offset, CmiStateStruct::pe, process, CMI_VMI_Send_Handle_RDMAGet_T::publishes_pending, CMI_VMI_Send_Handle_T::rdmaget, CMI_VMI_Send_Handle_Eager_Short_T::rdmaop, CMI_VMI_Handle_T::refcount, CMI_VMI_Send_Handle_Eager_Short_T::remote_buffer, CMI_VMI_Send_Handle_Eager_Long_T::remote_buffer, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, CMI_VMI_Eager_Short_Slot_Footer_T::sentinel, size, status(), sz, and CMI_VMI_Publish_Message_T::type.

CmiCommHandle CmiAsyncSendFn ( int  destrank,
int  msgsize,
char *  msg 
)

Definition at line 1097 of file machine.c.

References _Cmi_mype, CMI_VMI_Send_Handle_Eager_Short_T::cacheentry, CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_AsyncMsgCount, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Eager_Protocol, CMI_VMI_Eager_Short_Message_Boundary, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_Medium_Message_Boundary, CMI_VMI_MESSAGE_DISPOSITION_NONE, CMI_VMI_Processes, CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_RDMA_Publish_Completion_Handler(), CMI_VMI_RDMA_Put_Completion_Handler(), CMI_VMI_SEND_HANDLE_TYPE_RDMAGET, CMI_VMI_SEND_HANDLE_TYPE_STREAM, CMI_VMI_Small_Message_Boundary, CMI_VMI_Stream_Completion_Handler(), CmiAlloc(), context, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::data, CMI_VMI_Send_Handle_T::eager_long, CMI_VMI_Send_Handle_T::eager_short, ElanSendFn(), CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::index, CMI_VMI_Send_Handle_Eager_Long_T::maxsize, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Eager_Short_Slot_Footer_T::msgsize, CMI_VMI_Handle_T::msgsize, CMI_VMI_Send_Handle_Eager_Short_T::offset, process, CMI_VMI_Send_Handle_RDMAGet_T::publishes_pending, CMI_VMI_Send_Handle_T::rdmaget, CMI_VMI_Send_Handle_Eager_Short_T::rdmaop, CMI_VMI_Handle_T::refcount, CMI_VMI_Send_Handle_Eager_Short_T::remote_buffer, CMI_VMI_Send_Handle_Eager_Long_T::remote_buffer, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, CMI_VMI_Eager_Short_Slot_Footer_T::sentinel, size, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.

void CmiFreeSendFn ( int  destrank,
int  msgsize,
char *  msg 
)

Definition at line 1101 of file machine.c.

References _Cmi_mype, CMI_VMI_Send_Handle_Eager_Short_T::cacheentry, CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_AsyncMsgCount, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Eager_Protocol, CMI_VMI_Eager_Short_Message_Boundary, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_Medium_Message_Boundary, CMI_VMI_MESSAGE_DISPOSITION_FREE, CMI_VMI_MESSAGE_DISPOSITION_NONE, CMI_VMI_Processes, CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_RDMA_Publish_Completion_Handler(), CMI_VMI_RDMA_Put_Completion_Handler(), CMI_VMI_SEND_HANDLE_TYPE_RDMAGET, CMI_VMI_SEND_HANDLE_TYPE_STREAM, CMI_VMI_Small_Message_Boundary, CMI_VMI_Stream_Completion_Handler(), CmiAsyncSendFn(), CmiFree(), CmiGetState(), CmiMyPe(), CmiPrintf(), CmiSendSelf(), CmiWallTimer(), context, CQdCreate(), data, CMI_VMI_Send_Handle_T::eager_long, CMI_VMI_Send_Handle_T::eager_short, elan_port, CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::index, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Eager_Short_Slot_Footer_T::msgsize, CMI_VMI_Handle_T::msgsize, CMI_VMI_Send_Handle_Eager_Short_T::offset, CmiStateStruct::pe, process, CMI_VMI_Send_Handle_RDMAGet_T::publishes_pending, CMI_VMI_Send_Handle_T::rdmaget, CMI_VMI_Send_Handle_Eager_Short_T::rdmaop, CMI_VMI_Handle_T::refcount, CMI_VMI_Send_Handle_Eager_Short_T::remote_buffer, CMI_VMI_Send_Handle_Eager_Long_T::remote_buffer, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, CMI_VMI_Eager_Short_Slot_Footer_T::sentinel, size, status(), CMI_VMI_Send_Handle_T::stream, stretchFlag, sz, traceUserBracketEvent(), and CMI_VMI_Publish_Message_T::type.

void CmiSyncBroadcastFn ( int  msgsize,
char *  msg 
)

Definition at line 1182 of file machine.c.

References _Cmi_mype, _Cmi_numpes, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_AsyncMsgCount, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Eager_Protocol, CMI_VMI_Handle_Allocate(), CMI_VMI_Handle_Deallocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_Medium_Message_Boundary, CMI_VMI_MESSAGE_DISPOSITION_NONE, CMI_VMI_Processes, CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_SEND_HANDLE_TYPE_RDMABROADCAST, CMI_VMI_SEND_HANDLE_TYPE_STREAM, CMI_VMI_Spanning_Children_Count(), CMI_VMI_Stream_Completion_Handler(), CmiGetState(), CmiMyPe(), CmiSyncSendFn(), context, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::index, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Handle_T::msgsize, CmiStateStruct::pe, CMI_VMI_Send_Handle_RDMABroadcast_T::publishes_pending, CMI_VMI_Send_Handle_T::rdmabroadcast, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, SendSpanningChildren(), size, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.

CmiCommHandle CmiAsyncBroadcastFn ( int  msgsize,
char *  msg 
)

Definition at line 1199 of file machine.c.

References _Cmi_mype, _Cmi_numpes, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_AsyncMsgCount, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Eager_Protocol, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_Medium_Message_Boundary, CMI_VMI_MESSAGE_DISPOSITION_NONE, CMI_VMI_Processes, CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_RDMA_Publish_Completion_Handler(), CMI_VMI_SEND_HANDLE_TYPE_RDMABROADCAST, CMI_VMI_SEND_HANDLE_TYPE_STREAM, CMI_VMI_Small_Message_Boundary, CMI_VMI_Spanning_Children_Count(), CMI_VMI_Stream_Completion_Handler(), CmiAllAsyncMsgsSent(), CmiAsyncSendFn(), CmiGetState(), context, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::index, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Handle_T::msgsize, CmiStateStruct::pe, CMI_VMI_Send_Handle_RDMABroadcast_T::publishes_pending, CMI_VMI_Send_Handle_T::rdmabroadcast, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, size, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.

void CmiFreeBroadcastFn ( int  msgsize,
char *  msg 
)

Definition at line 1211 of file machine.c.

References _Cmi_mype, _Cmi_numpes, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_AsyncMsgCount, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Eager_Protocol, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_Medium_Message_Boundary, CMI_VMI_MESSAGE_DISPOSITION_FREE, CMI_VMI_Processes, CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_RDMA_Publish_Completion_Handler(), CMI_VMI_SEND_HANDLE_TYPE_RDMABROADCAST, CMI_VMI_SEND_HANDLE_TYPE_STREAM, CMI_VMI_Small_Message_Boundary, CMI_VMI_Spanning_Children_Count(), CMI_VMI_Stream_Completion_Handler(), CmiFree(), CmiSyncBroadcastFn(), context, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::index, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Handle_T::msgsize, CMI_VMI_Send_Handle_RDMABroadcast_T::publishes_pending, CMI_VMI_Send_Handle_T::rdmabroadcast, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, size, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.

void CmiSyncBroadcastAllFn ( int  msgsize,
char *  msg 
)

Definition at line 1217 of file machine.c.

References _Cmi_numpes, CdsFifo_Enqueue(), CmiAlloc(), CmiGetState(), CmiSyncBroadcastFn(), CmiSyncSendFn(), CmiStateStruct::pe, SendSpanningChildren(), and size.

CmiCommHandle CmiAsyncBroadcastAllFn ( int  msgsize,
char *  msg 
)

Definition at line 1232 of file machine.c.

References _Cmi_numpes, CdsFifo_Enqueue(), CmiAllAsyncMsgsSent(), CmiAlloc(), CmiAsyncBroadcastFn(), CmiAsyncSendFn(), and size.

void CmiFreeBroadcastAllFn ( int  msgsize,
char *  msg 
)

Definition at line 1241 of file machine.c.

References _Cmi_numpes, CdsFifo_Enqueue(), CMI_VMI_Medium_Message_Boundary, CMI_VMI_Small_Message_Boundary, CmiAlloc(), CmiFree(), CmiFreeBroadcastFn(), CmiGetState(), CmiSyncBroadcastFn(), CmiSyncSendFn(), CmiStateStruct::pe, SendSpanningChildren(), and size.

int CmiAsyncMsgSent ( CmiCommHandle  commhandle  ) 

Definition at line 343 of file machine.c.

References msg_list::e, elan_base, msg_list::next, CMI_VMI_Handle_T::refcount, and sent_msgs.

int CmiAllAsyncMsgsSent (  ) 

Definition at line 314 of file machine.c.

References CMI_VMI_AsyncMsgCount, CmiReleaseSentMessages(), cur_unsent, msg_list::e, elan_base, msg_list::next, and sent_msgs.

void CmiReleaseCommHandle ( CmiCommHandle  commhandle  ) 

Definition at line 370 of file machine.c.

References CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Eager_Protocol, CMI_VMI_Handle_Deallocate(), CMI_VMI_MESSAGE_DISPOSITION_FREE, CMI_VMI_SEND_HANDLE_TYPE_EAGER_LONG, CMI_VMI_SEND_HANDLE_TYPE_RDMABROADCAST, CMI_VMI_SEND_HANDLE_TYPE_RDMAGET, CMI_VMI_SEND_HANDLE_TYPE_STREAM, CmiFree(), context, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::data, CMI_VMI_Send_Handle_T::eager_long, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Send_Handle_T::rdmabroadcast, CMI_VMI_Send_Handle_T::rdmaget, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, status(), and CMI_VMI_Send_Handle_T::stream.

void* CmiGetNonLocal (  ) 

Definition at line 757 of file machine.c.

References CMI_VMI_Common_Receive(), CMI_VMI_Eager_Short_Pollset, CMI_VMI_Eager_Short_Pollset_Size, CMI_VMI_Message_Receive_Count, CmiGetState(), CmiIdleLock_checkMessage(), CmiReleaseSentMessages(), CMI_VMI_Handle_T::data, CMI_VMI_Receive_Handle_T::data, CMI_VMI_Receive_Handle_T::eager_short, ElanSendQueuedMessages(), CMI_VMI_Receive_Handle_Eager_Short_T::footer, CmiStateStruct::idle, CMI_VMI_Eager_Short_Slot_Footer_T::msgsize, PCQueuePop(), process, PumpMsgs(), CMI_VMI_Handle_T::receive, CmiStateStruct::recv, CMI_VMI_Eager_Short_Slot_Footer_T::sentinel, status(), and sz.

void CmiProbeLatencies (  ) 

Definition at line 2490 of file machine.c.

References _Cmi_mype, _Cmi_numpes, CMI_VMI_Latency_Vectors_Received, CMI_VMI_Processes, malloc(), status(), and sz.

Referenced by ConverseInit().

unsigned long CmiGetLatency ( int  process1,
int  process2 
)

Definition at line 2546 of file machine.c.

References CMI_VMI_Processes.

int CmiGetCluster ( int  process  ) 

Definition at line 2562 of file machine.c.

References CMI_VMI_Processes, and process.

int CmiGridQueueGetInterval (  ) 

Definition at line 2575 of file machine.c.

References CMI_VMI_Grid_Queue_Interval.

int CmiGridQueueGetThreshold (  ) 

Definition at line 2585 of file machine.c.

References CMI_VMI_Grid_Queue_Threshold.

void CmiGridQueueRegister ( int  gid,
int  nInts,
int  index1,
int  index2,
int  index3 
)

Definition at line 2595 of file machine.c.

References CMI_VMI_Grid_Objects, CMI_VMI_Grid_Objects_Compare(), CMI_VMI_Grid_Objects_Index, CMI_VMI_Grid_Queue, CMI_VMI_Grid_Queue_Maximum, CmiGridQueueLookup(), CMI_VMI_Grid_Object_T::gid, CMI_VMI_Grid_Object_T::index1, CMI_VMI_Grid_Object_T::index2, CMI_VMI_Grid_Object_T::index3, CMI_VMI_Grid_Object_T::nInts, and qsort().

void CmiGridQueueDeregister ( int  gid,
int  nInts,
int  index1,
int  index2,
int  index3 
)

Definition at line 2625 of file machine.c.

References CMI_VMI_Grid_Objects, CMI_VMI_Grid_Objects_Index, CMI_VMI_Grid_Queue, CMI_VMI_Grid_Object_T::index1, CMI_VMI_Grid_Object_T::index2, CMI_VMI_Grid_Object_T::index3, and CMI_VMI_Grid_Object_T::nInts.

void CmiGridQueueDeregisterAll (  ) 

Definition at line 2674 of file machine.c.

References CMI_VMI_Grid_Objects_Index.

int CmiGridQueueLookup