
Go to the source code of this file.
Definition in file machine.h.
| void ConverseInit | ( | int | argc, | |
| char ** | argv, | |||
| CmiStartFn | start_function, | |||
| int | user_calls_scheduler, | |||
| int | init_returns | |||
| ) |
Definition at line 127 of file machine.c.
References CcdCallOnConditionKeep(), CdsFifo_Create(), CMI_VMI_Cluster_Mapping_Received, CMI_VMI_Compute_Cluster_Mapping(), CMI_VMI_CONNECTION_DISCONNECTED, CMI_VMI_Distribute_Cluster_Mapping(), CMI_VMI_Initialize_VMI(), CMI_VMI_Open_Connections(), CMI_VMI_Program_Key, CMI_VMI_Read_Environment(), CMI_VMI_Startup_Charmrun(), CMI_VMI_Startup_CRM(), CMI_VMI_Wait_Cluster_Mapping(), CmiAbort(), CmiBarrier(), CmiGetArgc(), CmiNotifyIdle(), CmiPrintf(), CmiProbeLatencies(), ConverseCommonInit(), ConverseExit(), CsdScheduler(), CthInit(), malloc(), refcount, and value.
| void ConverseExit | ( | ) |
Definition at line 363 of file machine.c.
References CdsFifo_Destroy(), CMI_VMI_Close_Connections(), CMI_VMI_Program_Key, CMI_VMI_Socket_Send(), CMI_VMI_Terminate_VMI(), CMI_VMI_Username, CmiBarrier(), ConverseCommonExit(), free(), CMI_VMI_Charmrun_Message_Header_T::msg_len, CMI_VMI_Charmrun_Message_Header_T::msg_type, and status().
| void CmiAbort | ( | const char * | message | ) |
Serial version of common Charm++ routines:.
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.
| void CmiMemLock | ( | ) |
Definition at line 317 of file machine-common-core.c.
| void CmiMemUnlock | ( | ) |
Definition at line 318 of file machine-common-core.c.
| int CmiScanf | ( | const char * | format, | |
| ... | ||||
| ) |
Definition at line 799 of file machine.c.
References CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Send_Handle_Eager_Short_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Handle_Allocate(), CMI_VMI_Handle_Deallocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_NONE, CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_RDMA_Put_Completion_Handler(), CMI_VMI_SEND_HANDLE_TYPE_RDMAGET, CmiAlloc(), CMI_VMI_Process_T::connection, context, CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::eager_long, CMI_VMI_Process_T::eager_long_send_handles, CMI_VMI_Process_T::eager_long_send_size, CMI_VMI_Send_Handle_T::eager_short, CMI_VMI_Process_T::eager_short_receive_credits_replentish, CMI_VMI_Process_T::eager_short_send_credits_available, CMI_VMI_Process_T::eager_short_send_handles, CMI_VMI_Process_T::eager_short_send_index, CMI_VMI_Process_T::eager_short_send_size, 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_Handle_T::msgsize, CMI_VMI_Eager_Short_Slot_Footer_T::msgsize, CMI_VMI_Send_Handle_Eager_Short_T::offset, 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_Long_T::remote_buffer, CMI_VMI_Send_Handle_Eager_Short_T::remote_buffer, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, CMI_VMI_Eager_Short_Slot_Footer_T::sentinel, status(), sz, and CMI_VMI_Publish_Message_T::type.
| CmiCommHandle CmiAsyncSendFn | ( | int | destrank, | |
| int | msgsize, | |||
| char * | msg | |||
| ) |
Definition at line 994 of file machine.c.
References CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Send_Handle_Eager_Short_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_NONE, 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_Stream_Completion_Handler(), CmiAlloc(), CMI_VMI_Process_T::connection, context, CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::eager_long, CMI_VMI_Process_T::eager_long_send_handles, CMI_VMI_Process_T::eager_long_send_size, CMI_VMI_Send_Handle_T::eager_short, CMI_VMI_Process_T::eager_short_receive_credits_replentish, CMI_VMI_Process_T::eager_short_send_credits_available, CMI_VMI_Process_T::eager_short_send_handles, CMI_VMI_Process_T::eager_short_send_index, CMI_VMI_Process_T::eager_short_send_size, 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_Handle_T::msgsize, CMI_VMI_Eager_Short_Slot_Footer_T::msgsize, CMI_VMI_Send_Handle_Eager_Short_T::offset, 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_Long_T::remote_buffer, CMI_VMI_Send_Handle_Eager_Short_T::remote_buffer, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, CMI_VMI_Eager_Short_Slot_Footer_T::sentinel, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.
Definition at line 1212 of file machine.c.
References CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Send_Handle_Eager_Short_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_FREE, CMI_VMI_MESSAGE_DISPOSITION_NONE, 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_Stream_Completion_Handler(), CmiFree(), CMI_VMI_Process_T::connection, context, data, CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::eager_long, CMI_VMI_Process_T::eager_long_send_handles, CMI_VMI_Process_T::eager_long_send_size, CMI_VMI_Send_Handle_T::eager_short, CMI_VMI_Process_T::eager_short_receive_credits_replentish, CMI_VMI_Process_T::eager_short_send_credits_available, CMI_VMI_Process_T::eager_short_send_handles, CMI_VMI_Process_T::eager_short_send_index, CMI_VMI_Process_T::eager_short_send_size, 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_Eager_Short_Slot_Footer_T::msgsize, CMI_VMI_Send_Handle_Eager_Short_T::offset, 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_Long_T::remote_buffer, CMI_VMI_Send_Handle_Eager_Short_T::remote_buffer, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, CMI_VMI_Eager_Short_Slot_Footer_T::sentinel, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.
| void CmiSyncBroadcastFn | ( | int | msgsize, | |
| char * | msg | |||
| ) |
Definition at line 243 of file machine-broadcast.c.
References CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Handle_Allocate(), CMI_VMI_Handle_Deallocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_NONE, 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(), CmiFree(), CmiSyncBroadcastFn1(), context, CopyMsg(), CMI_VMI_Send_Handle_T::data, CMI_VMI_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, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.
| CmiCommHandle CmiAsyncBroadcastFn | ( | int | msgsize, | |
| char * | msg | |||
| ) |
Definition at line 266 of file machine-broadcast.c.
References CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_NONE, 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_Spanning_Children_Count(), CMI_VMI_Stream_Completion_Handler(), CmiAbort(), context, CMI_VMI_Send_Handle_T::data, CMI_VMI_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, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.
| void CmiFreeBroadcastFn | ( | int | msgsize, | |
| char * | msg | |||
| ) |
Definition at line 256 of file machine-broadcast.c.
References CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_CacheEntry_From_Context(), CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_FREE, 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_Spanning_Children_Count(), CMI_VMI_Stream_Completion_Handler(), CmiFree(), CmiSyncBroadcastFn1(), context, CMI_VMI_Send_Handle_T::data, CMI_VMI_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, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.
| void CmiSyncBroadcastAllFn | ( | int | msgsize, | |
| char * | msg | |||
| ) |
Definition at line 274 of file machine-broadcast.c.
References CdsFifo_Enqueue(), CmiAlloc(), CmiFree(), CmiMyPe(), CmiSyncBroadcastFn(), CmiSyncBroadcastFn1(), CmiSyncSendFn(), and CopyMsg().
| CmiCommHandle CmiAsyncBroadcastAllFn | ( | int | msgsize, | |
| char * | msg | |||
| ) |
Definition at line 302 of file machine-broadcast.c.
References CdsFifo_Enqueue(), CmiAlloc(), CmiAsyncBroadcastFn(), CmiSendSelf(), and CopyMsg().
| void CmiFreeBroadcastAllFn | ( | int | msgsize, | |
| char * | msg | |||
| ) |
Definition at line 288 of file machine-broadcast.c.
References CdsFifo_Enqueue(), CmiAlloc(), CmiFree(), CmiFreeBroadcastFn(), CmiGetReference(), CmiSendSelf(), CmiSyncBroadcastFn(), CmiSyncBroadcastFn1(), and CopyMsg().
| int CmiAsyncMsgSent | ( | CmiCommHandle | commhandle | ) |
Definition at line 540 of file machine.c.
References CmiAbort(), done, MPI_SUCCESS, MPI_Test(), msg_list::next, CMI_VMI_Handle_T::refcount, and msg_list::req.
| void CmiReleaseCommHandle | ( | CmiCommHandle | commhandle | ) |
Definition at line 558 of file machine.c.
References CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, 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_Send_Handle_T::data, CMI_VMI_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 | ( | ) |
In SMP mode with comm thread, it's possible a normal msg is sent from an immediate msg which is executed on comm thread. In this case, the msg is sent to the network queue of the work thread. Therefore, even there's only one worker thread, the polling of network queue is still required.
Definition at line 2355 of file machine.c.
References CdsFifo_Dequeue(), CdsFifo_Enqueue(), CMI_VMI_Common_Receive(), CMI_VMI_Send_Spanning_Children(), CMI_VMI_Receive_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Receive_Handle_T::eager_short, CMI_VMI_Process_T::eager_short_count, CMI_VMI_Process_T::eager_short_receive_handles, CMI_VMI_Process_T::eager_short_receive_index, CMI_VMI_Process_T::eager_short_receive_size, CMI_VMI_Receive_Handle_Eager_Short_T::footer, free(), gk_delayed_msgs::msg, msg, gk_delayed_msgs::msgsize, CMI_VMI_Eager_Short_Slot_Footer_T::msgsize, gk_delayed_msgs::next, CMI_VMI_Process_T::rank, CMI_VMI_Handle_T::receive, gk_delayed_msgs::sender, CMI_VMI_Eager_Short_Slot_Footer_T::sentinel, status(), sz, and gk_delayed_msgs::time.
| void CmiProbeLatencies | ( | ) |
Definition at line 2600 of file machine.c.
References CMI_VMI_Grid_Objects_Compare(), 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().
Definition at line 2630 of file machine.c.
References CMI_VMI_Grid_Object_T::gid, 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.
Definition at line 2691 of file machine.c.
References CMI_VMI_Grid_Objects_Compare(), 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 ptr.
| int CmiGridQueueLookupMsg | ( | char * | msg | ) |
Definition at line 2745 of file machine.c.
References CMI_VMI_Envelope_utype::s_array::arr, CMI_VMI_Envelope_utype::array, CmiGridQueueLookup(), CMI_VMI_Envelope_utype::s_array::index, CMI_VMI_Envelope_sattribs::mtype, CMI_VMI_Envelope::s_attribs, and CMI_VMI_Envelope::u_type.
| int CMI_VMI_Grid_Objects_Compare | ( | const void * | ptr1, | |
| const void * | ptr2 | |||
| ) |
Definition at line 2764 of file machine.c.
References CmiAbort(), CMI_VMI_Grid_Object_T::gid, 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.
Referenced by CmiGridQueueLookup(), and CmiGridQueueRegister().
| void CmiDestroyPersistent | ( | PersistentHandle | phandle | ) |
| void CMI_VMI_Read_Environment | ( | ) |
Definition at line 2985 of file machine.c.
References CMI_VMI_Charmrun_IP, CMI_VMI_CRM_Hostname, CMI_VMI_Program_Key, CMI_VMI_Username, CmiAbort(), free(), and value.
Referenced by ConverseInit().
| int CMI_VMI_Startup_CRM | ( | ) |
Definition at line 3150 of file machine.c.
References CMI_VMI_CRM_Register_Message_T::cluster, CMI_VMI_CRM_Hostname, CMI_VMI_Program_Key, CMI_VMI_Socket_Receive(), CMI_VMI_Socket_Send(), CmiPrintf(), free(), CMI_VMI_CRM_Register_Message_T::key, CMI_VMI_CRM_Register_Message_T::key_length, malloc(), CMI_VMI_CRM_Register_Message_T::node_context, ntohl(), CMI_VMI_CRM_Register_Message_T::numpes, and printf().
Referenced by ConverseInit().
| int CMI_VMI_Startup_Charmrun | ( | ) |
Definition at line 3342 of file machine.c.
References CMI_VMI_Charmrun_IP, CMI_VMI_Socket_Receive(), CMI_VMI_Socket_Send(), CMI_VMI_Charmrun_Register_Message_T::dataport, free(), CMI_VMI_Charmrun_Register_Message_T::mach_id, malloc(), CMI_VMI_Charmrun_Message_Header_T::msg_len, CMI_VMI_Charmrun_Message_Header_T::msg_type, CMI_VMI_Charmrun_Register_Message_T::node_IP, CMI_VMI_Charmrun_Register_Message_T::node_number, ntohl(), and CMI_VMI_Charmrun_Register_Message_T::numpes.
Referenced by ConverseInit().
| int CMI_VMI_Initialize_VMI | ( | ) |
Definition at line 3443 of file machine.c.
References CMI_VMI_Bucket1_Pool, CMI_VMI_Bucket2_Pool, CMI_VMI_Bucket3_Pool, CMI_VMI_Bucket4_Pool, CMI_VMI_Bucket5_Pool, CMI_VMI_Connection_Handler(), CMI_VMI_Disconnection_Handler(), CMI_VMI_Program_Key, CMI_VMI_Stream_Notification_Handler(), free(), malloc(), and status().
Referenced by ConverseInit().
| int CMI_VMI_Terminate_VMI | ( | ) |
Definition at line 3534 of file machine.c.
References CMI_VMI_Bucket1_Pool, CMI_VMI_Bucket2_Pool, CMI_VMI_Bucket3_Pool, CMI_VMI_Bucket4_Pool, CMI_VMI_Bucket5_Pool, and status().
Referenced by ConverseExit().
Definition at line 3573 of file machine.c.
Referenced by CMI_VMI_Startup_Charmrun(), CMI_VMI_Startup_CRM(), CmiError(), CmiPrintf(), and ConverseExit().
Definition at line 3599 of file machine.c.
Referenced by CMI_VMI_Startup_Charmrun(), and CMI_VMI_Startup_CRM().
| int CMI_VMI_Open_Connections | ( | ) |
Definition at line 3634 of file machine.c.
References CMI_VMI_CONNECTION_CONNECTED, CMI_VMI_CONNECTION_ERROR, CMI_VMI_Open_Connection(), CMI_VMI_Program_Key, free(), malloc(), CMI_VMI_Connect_Message_T::rank, start_time, and status().
Referenced by ConverseInit().
| int CMI_VMI_Open_Connection | ( | int | remote_rank, | |
| char * | remote_key, | |||
| PVMI_BUFFER | connect_message_buffer | |||
| ) |
Definition at line 3744 of file machine.c.
References CMI_VMI_CONNECTION_CONNECTING, CMI_VMI_Connection_Response_Handler(), CMI_VMI_Username, CMI_VMI_Process_T::connection, CMI_VMI_Process_T::connection_state, localAddress, CMI_VMI_Process_T::node_IP, and status().
Referenced by CMI_VMI_Open_Connections().
| VMI_CONNECT_RESPONSE CMI_VMI_Connection_Handler | ( | PVMI_CONNECT | connection, | |
| PVMI_SLAB | slab, | |||
| ULONG | data_size | |||
| ) |
Definition at line 3809 of file machine.c.
References CMI_VMI_CONNECTION_CONNECTED, CMI_VMI_RDMA_Get_Notification_Handler(), CMI_VMI_RDMA_Publish_Notification_Handler(), CMI_VMI_RDMA_Put_Notification_Handler(), data, free(), malloc(), ntohl(), CMI_VMI_Connect_Message_T::rank, size, and status().
Referenced by CMI_VMI_Initialize_VMI().
| void CMI_VMI_Connection_Response_Handler | ( | PVOID | context, | |
| PVOID | response, | |||
| USHORT | size, | |||
| PVOID | handle, | |||
| VMI_CONNECT_RESPONSE | remote_status | |||
| ) |
Definition at line 3885 of file machine.c.
References CMI_VMI_CONNECTION_CONNECTED, CMI_VMI_CONNECTION_DISCONNECTED, CMI_VMI_CONNECTION_ERROR, CMI_VMI_RDMA_Get_Notification_Handler(), CMI_VMI_RDMA_Publish_Notification_Handler(), CMI_VMI_RDMA_Put_Notification_Handler(), CMI_VMI_Process_T::connection, CMI_VMI_Process_T::connection_state, CMI_VMI_Process_T::node_IP, CMI_VMI_Process_T::rank, and status().
Referenced by CMI_VMI_Open_Connection().
| int CMI_VMI_Close_Connections | ( | ) |
Definition at line 3957 of file machine.c.
References CMI_VMI_CONNECTION_DISCONNECTED, CMI_VMI_CONNECTION_DISCONNECTING, CMI_VMI_Disconnection_Response_Handler(), start_time, and status().
Referenced by ConverseExit().
| void CMI_VMI_Disconnection_Handler | ( | PVMI_CONNECT | connection | ) |
Definition at line 4016 of file machine.c.
References CMI_VMI_CONNECTION_DISCONNECTED, and CMI_VMI_Process_T::connection_state.
Referenced by CMI_VMI_Initialize_VMI().
| void CMI_VMI_Disconnection_Response_Handler | ( | PVMI_CONNECT | connection, | |
| PVOID | context, | |||
| VMI_STATUS | remote_status | |||
| ) |
Definition at line 4033 of file machine.c.
References CMI_VMI_CONNECTION_DISCONNECTED, and CMI_VMI_Process_T::connection_state.
Referenced by CMI_VMI_Close_Connections().
| void CMI_VMI_Reply_Latencies | ( | int | sourcerank | ) |
Definition at line 4049 of file machine.c.
References CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_FREE, CMI_VMI_SEND_HANDLE_TYPE_STREAM, CMI_VMI_Stream_Completion_Handler(), CmiAlloc(), CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Handle_T::handle_type, CMI_VMI_Latency_Vector_Reply_Message_T::latency, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Handle_T::msgsize, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, status(), CMI_VMI_Send_Handle_T::stream, and sz.
Referenced by CMI_VMI_Common_Receive().
| void CMI_VMI_Compute_Cluster_Mapping | ( | ) |
| void CMI_VMI_Distribute_Cluster_Mapping | ( | ) |
Definition at line 4152 of file machine.c.
References CMI_VMI_Send_Handle_Stream_T::cacheentry, CMI_VMI_Cluster_Mapping_Message_T::cluster, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_FREE, CMI_VMI_SEND_HANDLE_TYPE_STREAM, CMI_VMI_Stream_Completion_Handler(), CmiAlloc(), CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Handle_T::handle_type, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Handle_T::msgsize, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, CMI_VMI_Send_Handle_T::send_handle_type, status(), CMI_VMI_Send_Handle_T::stream, and sz.
Referenced by ConverseInit().
| void CMI_VMI_Wait_Cluster_Mapping | ( | ) |
Definition at line 4222 of file machine.c.
References CMI_VMI_Cluster_Mapping_Received, and status().
Referenced by ConverseInit().
| PVMI_CACHE_ENTRY CMI_VMI_CacheEntry_From_Context | ( | void * | context | ) |
Definition at line 4415 of file machine.c.
References CMI_VMI_Receive_Handle_Eager_Long_T::cacheentry, CMI_VMI_Receive_Handle_Eager_Short_T::cacheentry, CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_LONG, CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_SHORT, CmiAbort(), CMI_VMI_Receive_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Receive_Handle_T::eager_long, CMI_VMI_Receive_Handle_T::eager_short, CMI_VMI_Handle_T::receive, and CMI_VMI_Receive_Handle_T::receive_handle_type.
Referenced by CmiAsyncBroadcastFn(), CmiAsyncSendFn(), CmiFreeBroadcastFn(), CmiFreeSendFn(), CmiSyncBroadcastFn(), and CmiSyncSendFn().
| CMI_VMI_Handle_T* CMI_VMI_Handle_Allocate | ( | ) |
Definition at line 4445 of file machine.c.
References realloc(), refcount, and status().
Referenced by CMI_VMI_Distribute_Cluster_Mapping(), CMI_VMI_Eager_Long_Setup(), CMI_VMI_Eager_Short_Setup(), CMI_VMI_RDMA_Publish_Notification_Handler(), CMI_VMI_Reply_Latencies(), CMI_VMI_Send_Spanning_Children(), CmiAsyncBroadcastFn(), CmiAsyncSendFn(), CmiFreeBroadcastFn(), CmiFreeSendFn(), CmiSyncBroadcastFn(), and CmiSyncSendFn().
| void CMI_VMI_Handle_Deallocate | ( | CMI_VMI_Handle_T * | handle | ) |
Definition at line 4483 of file machine.c.
References CMI_VMI_Handle_T::refcount.
Referenced by CMI_VMI_RDMA_Get_Completion_Handler(), CMI_VMI_RDMA_Get_Notification_Handler(), CMI_VMI_RDMA_Put_Completion_Handler(), CMI_VMI_Stream_Completion_Handler(), CmiReleaseCommHandle(), CmiSyncBroadcastFn(), and CmiSyncSendFn().
| void CMI_VMI_Eager_Short_Setup | ( | int | sender_rank | ) |
Definition at line 4495 of file machine.c.
References CMI_VMI_Receive_Handle_Eager_Short_T::cacheentry, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_RECEIVE, CMI_VMI_PUBLISH_TYPE_EAGER_SHORT, CMI_VMI_RDMA_Publish_Completion_Handler(), CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_SHORT, CmiAlloc(), CMI_VMI_Process_T::connection, CMI_VMI_Receive_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Receive_Handle_Eager_Short_T::eager_buffer, CMI_VMI_Receive_Handle_T::eager_short, CMI_VMI_Process_T::eager_short_receive_handles, CMI_VMI_Process_T::eager_short_receive_size, CMI_VMI_Receive_Handle_Eager_Short_T::footer, CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::msg, CMI_VMI_Eager_Short_Slot_Footer_T::msgsize, CMI_VMI_Handle_T::msgsize, CMI_VMI_Receive_Handle_Eager_Short_T::publish_buffer, CMI_VMI_Receive_Handle_Eager_Short_T::publishes_pending, CMI_VMI_Handle_T::receive, CMI_VMI_Receive_Handle_T::receive_handle_type, CMI_VMI_Handle_T::refcount, CMI_VMI_Receive_Handle_Eager_Short_T::sender_rank, status(), and CMI_VMI_Publish_Message_T::type.
Referenced by CMI_VMI_Common_Receive(), CmiNotifyIdle(), and CmiRegisterReceivePersistent().
Definition at line 4594 of file machine.c.
References CMI_VMI_Receive_Handle_Eager_Long_T::cacheentry, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_RECEIVE, CMI_VMI_PUBLISH_TYPE_EAGER_LONG, CMI_VMI_RDMA_Publish_Completion_Handler(), CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_LONG, CmiAlloc(), CMI_VMI_Process_T::connection, CMI_VMI_Receive_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Receive_Handle_T::eager_long, CMI_VMI_Process_T::eager_long_receive_handles, CMI_VMI_Process_T::eager_long_receive_size, CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::index, CMI_VMI_Receive_Handle_Eager_Long_T::maxsize, CMI_VMI_Handle_T::msg, CMI_VMI_Handle_T::msgsize, CMI_VMI_Receive_Handle_Eager_Long_T::publishes_pending, CMI_VMI_Handle_T::receive, CMI_VMI_Receive_Handle_T::receive_handle_type, CMI_VMI_Handle_T::refcount, CMI_VMI_Receive_Handle_Eager_Long_T::sender_rank, status(), and CMI_VMI_Publish_Message_T::type.
Referenced by CMI_VMI_Common_Receive(), CmiNotifyIdle(), and CmiRegisterReceivePersistent().
| VMI_RECV_STATUS CMI_VMI_Stream_Notification_Handler | ( | PVMI_CONNECT | connection, | |
| PVMI_STREAM_RECV | stream, | |||
| VMI_STREAM_COMMAND | command, | |||
| PVOID | context, | |||
| PVMI_SLAB | slab | |||
| ) |
Definition at line 4671 of file machine.c.
References CMI_VMI_Common_Receive(), CmiAlloc(), msg, CMI_VMI_Process_T::normal_short_count, CMI_VMI_Process_T::rank, and status().
Referenced by CMI_VMI_Initialize_VMI().
| void CMI_VMI_Stream_Completion_Handler | ( | PVOID | context, | |
| VMI_STATUS | remote_status | |||
| ) |
Definition at line 4718 of file machine.c.
References CMI_VMI_Send_Handle_Stream_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_Handle_Deallocate(), CMI_VMI_MESSAGE_DISPOSITION_ENQUEUE, CMI_VMI_MESSAGE_DISPOSITION_FREE, CmiFree(), CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, status(), and CMI_VMI_Send_Handle_T::stream.
Referenced by CMI_VMI_Distribute_Cluster_Mapping(), CMI_VMI_Reply_Latencies(), CMI_VMI_Send_Spanning_Children(), CmiAsyncBroadcastFn(), CmiAsyncSendFn(), CmiFreeBroadcastFn(), CmiFreeSendFn(), and CmiSyncBroadcastFn().
| void CMI_VMI_RDMA_Publish_Notification_Handler | ( | PVMI_CONNECT | connection, | |
| PVMI_REMOTE_BUFFER | remote_buffer, | |||
| PVMI_SLAB | publish_data, | |||
| ULONG | publish_data_size | |||
| ) |
Definition at line 4777 of file machine.c.
References CMI_VMI_Receive_Handle_RDMAGet_T::cacheentry, CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_RECEIVE, CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_NONE, CMI_VMI_PUBLISH_TYPE_EAGER_LONG, CMI_VMI_PUBLISH_TYPE_EAGER_SHORT, CMI_VMI_PUBLISH_TYPE_GET, CMI_VMI_RDMA_Get_Completion_Handler(), CMI_VMI_RECEIVE_HANDLE_TYPE_RDMAGET, CMI_VMI_SEND_HANDLE_TYPE_EAGER_LONG, CMI_VMI_SEND_HANDLE_TYPE_EAGER_SHORT, CmiAlloc(), CMI_VMI_Receive_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Process_T::eager_long_send_handles, CMI_VMI_Process_T::eager_long_send_size, CMI_VMI_Process_T::eager_short_send_credits_available, CMI_VMI_Process_T::eager_short_send_handles, CMI_VMI_Process_T::eager_short_send_size, CMI_VMI_Handle_T::handle_type, CMI_VMI_Handle_T::msg, msg, CMI_VMI_Handle_T::msgsize, CMI_VMI_Receive_Handle_RDMAGet_T::process, CMI_VMI_Receive_Handle_T::rdmaget, CMI_VMI_Handle_T::receive, CMI_VMI_Receive_Handle_T::receive_handle_type, CMI_VMI_Handle_T::refcount, status(), and CMI_VMI_Publish_Message_T::type.
Referenced by CMI_VMI_Connection_Handler(), and CMI_VMI_Connection_Response_Handler().
| void CMI_VMI_RDMA_Publish_Completion_Handler | ( | PVOID | context, | |
| VMI_STATUS | remote_status | |||
| ) |
Definition at line 4900 of file machine.c.
References CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_RECEIVE_HANDLE_TYPE_EAGER_SHORT, CMI_VMI_SEND_HANDLE_TYPE_RDMAGET, CMI_VMI_Receive_Handle_T::data, CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Receive_Handle_T::eager_long, CMI_VMI_Receive_Handle_T::eager_short, CMI_VMI_Handle_T::handle_type, CMI_VMI_Receive_Handle_Eager_Long_T::publishes_pending, CMI_VMI_Receive_Handle_Eager_Short_T::publishes_pending, CMI_VMI_Send_Handle_RDMABroadcast_T::publishes_pending, CMI_VMI_Send_Handle_RDMAGet_T::publishes_pending, CMI_VMI_Send_Handle_T::rdmabroadcast, CMI_VMI_Send_Handle_T::rdmaget, CMI_VMI_Handle_T::receive, CMI_VMI_Receive_Handle_T::receive_handle_type, CMI_VMI_Handle_T::send, and CMI_VMI_Send_Handle_T::send_handle_type.
Referenced by CMI_VMI_Eager_Long_Setup(), CMI_VMI_Eager_Short_Setup(), CMI_VMI_Send_Spanning_Children(), CmiAsyncBroadcastFn(), CmiAsyncSendFn(), CmiFreeBroadcastFn(), and CmiFreeSendFn().
| void CMI_VMI_RDMA_Put_Notification_Handler | ( | PVMI_CONNECT | connection, | |
| UINT32 | rdma_size, | |||
| UINT32 | context, | |||
| VMI_STATUS | remote_status | |||
| ) |
Definition at line 4929 of file machine.c.
References CMI_VMI_Common_Receive(), CMI_VMI_Process_T::eager_long_count, CMI_VMI_Handle_T::msg, msg, CMI_VMI_Process_T::rank, and status().
Referenced by CMI_VMI_Connection_Handler(), and CMI_VMI_Connection_Response_Handler().
| void CMI_VMI_RDMA_Put_Completion_Handler | ( | PVMI_RDMA_OP | rdmaop, | |
| PVOID | context, | |||
| VMI_STATUS | remote_status | |||
| ) |
Definition at line 4971 of file machine.c.
References CMI_VMI_Send_Handle_Eager_Long_T::cacheentry, CMI_VMI_Handle_Deallocate(), CMI_VMI_MESSAGE_DISPOSITION_FREE, CmiFree(), CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::eager_long, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, and status().
Referenced by CmiAsyncSendFn(), CmiFreeSendFn(), and CmiSyncSendFn().
| void CMI_VMI_RDMA_Get_Notification_Handler | ( | PVMI_CONNECT | connection, | |
| UINT32 | context, | |||
| VMI_STATUS | remote_status | |||
| ) |
Definition at line 5017 of file machine.c.
References CMI_VMI_Send_Handle_RDMAGet_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_Handle_Deallocate(), CMI_VMI_MESSAGE_DISPOSITION_ENQUEUE, CMI_VMI_MESSAGE_DISPOSITION_FREE, CmiFree(), CMI_VMI_Send_Handle_T::data, CMI_VMI_Handle_T::data, CMI_VMI_Send_Handle_T::message_disposition, CMI_VMI_Handle_T::msg, CMI_VMI_Send_Handle_T::rdmaget, CMI_VMI_Handle_T::refcount, CMI_VMI_Handle_T::send, and status().
Referenced by CMI_VMI_Connection_Handler(), and CMI_VMI_Connection_Response_Handler().
| void CMI_VMI_RDMA_Get_Completion_Handler | ( | PVMI_RDMA_OP | rdmaop, | |
| PVOID | context, | |||
| VMI_STATUS | remote_status | |||
| ) |
Definition at line 5065 of file machine.c.
References CMI_VMI_Receive_Handle_RDMAGet_T::cacheentry, CMI_VMI_Common_Receive(), CMI_VMI_Handle_Deallocate(), CmiGetCluster(), CMI_VMI_Receive_Handle_T::data, CMI_VMI_Handle_T::data, malloc(), gk_delayed_msgs::msg, CMI_VMI_Handle_T::msg, msg, gk_delayed_msgs::msgsize, CMI_VMI_Handle_T::msgsize, gk_delayed_msgs::next, CMI_VMI_Process_T::normal_long_count, CMI_VMI_Receive_Handle_RDMAGet_T::process, CMI_VMI_Process_T::rank, CMI_VMI_Receive_Handle_T::rdmaget, CMI_VMI_Handle_T::receive, gk_delayed_msgs::sender, status(), and gk_delayed_msgs::time.
Referenced by CMI_VMI_RDMA_Publish_Notification_Handler().
| int CMI_VMI_Spanning_Children_Count | ( | char * | msg | ) |
Definition at line 5138 of file machine.c.
Referenced by CMI_VMI_Send_Spanning_Children(), CmiAsyncBroadcastFn(), CmiFreeBroadcastFn(), and CmiSyncBroadcastFn().
| void CMI_VMI_Send_Spanning_Children | ( | int | msgsize, | |
| char * | msg | |||
| ) |
Definition at line 5179 of file machine.c.
References CMI_VMI_Send_Handle_RDMABroadcast_T::cacheentry, CMI_VMI_Send_Handle_Stream_T::cacheentry, CdsFifo_Enqueue(), CMI_VMI_Handle_Allocate(), CMI_VMI_HANDLE_TYPE_SEND, CMI_VMI_MESSAGE_DISPOSITION_ENQUEUE, 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_Spanning_Children_Count(), CMI_VMI_Stream_Completion_Handler(), CMI_VMI_Send_Handle_T::data, CMI_VMI_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, status(), CMI_VMI_Send_Handle_T::stream, sz, and CMI_VMI_Publish_Message_T::type.
Referenced by CMI_VMI_Common_Receive(), and CmiGetNonLocal().
| void CMI_VMI_Common_Receive | ( | ) |
1.5.5