PPL Logo

arch/util/machine-common-core.C File Reference

Go to the source code of this file.

Data Structures

struct  CmiIdleState

Enumerations

enum  MACHINE_SMP_MODE {
  INVALID_MODE, COMM_THREAD_SEND_RECV = 0, COMM_THREAD_SEND_RECV = 0, COMM_THREAD_ONLY_RECV,
  COMM_WORK_THREADS_SEND_RECV, COMM_THREAD_NOT_EXIST
}

Functions

 CsvDeclare (CMIQueue, procBcastQ)
 CsvDeclare (CMIQueue, nodeBcastQ)
static int _cmi_log2 (int size)
double TraceTimerCommon (void)
static void handleOneBcastMsg (int size, char *msg)
static void processBcastQs (void)
static INLINE_KEYWORD void processProcBcastMsg (int size, char *msg)
static INLINE_KEYWORD void processNodeBcastMsg (int size, char *msg)
static void SendSpanningChildrenProc (int size, char *msg)
static void SendHyperCubeProc (int size, char *msg)
static void SendSpanningChildrenNode (int size, char *msg)
static void SendHyperCubeNode (int size, char *msg)
static void SendSpanningChildren (int size, char *msg, int rankToAssign, int startNode)
static void SendHyperCube (int size, char *msg, int rankToAssign, int startNode)
void CmiSyncBroadcastFn (int size, char *msg)
CmiCommHandle CmiAsyncBroadcastFn (int size, char *msg)
void CmiFreeBroadcastFn (int size, char *msg)
void CmiSyncBroadcastAllFn (int size, char *msg)
CmiCommHandle CmiAsyncBroadcastAllFn (int size, char *msg)
void CmiFreeBroadcastAllFn (int size, char *msg)
void CmiSyncNodeBroadcastFn (int size, char *msg)
CmiCommHandle CmiAsyncNodeeroadcastFn (int size, char *msg)
void CmiFreeNodeBroadcastFn (int size, char *msg)
void CmiSyncNodeBroadcastAllFn (int size, char *msg)
CmiCommHandle CmiAsyncNodeBroadcastAllFn (int size, char *msg)
void CmiFreeNodeBroadcastAllFn (int size, char *msg)
 CpvDeclare (void *, CmiLocalQueue)
void CmiSuspendedTaskEnqueue (int targetRank, void *data)
void * CmiSuspendedTaskPop ()
 CpvDeclare (unsigned, networkProgressCount)
CMK_NORETURN void CmiAbort (const char *message)
 Serial version of common Charm++ routines:.
static void PerrorExit (const char *msg)
static void handleOneRecvedMsg (int size, char *msg)
static void SendToPeers (int size, char *msg)
void CmiPushPE (int rank, void *msg)
void CmiPushNode (void *msg)
static void CmiSendSelf (char *msg)
void CmiSyncSendFn (int destPE, int size, char *msg)
CmiCommHandle CmiAsyncSendFn (int destPE, int size, char *msg)
void CmiFreeSendFn (int destPE, int size, char *msg)
static void CmiSendNodeSelf (char *msg)
void CmiSyncNodeSendFn (int destNode, int size, char *msg)
CmiCommHandle CmiAsyncNodeSendFn (int destNode, int size, char *msg)
void CmiFreeNodeSendFn (int destNode, int size, char *msg)
void ConverseInit (int argc, char **argv, CmiStartFn fn, int usched, int initret)
static void ConverseRunPE (int everReturn)
static void AdvanceCommunication (int whenidle)
static void CommunicationServer (int sleepTime)
void CommunicationServerThread (int sleepTime)
void * CmiGetNonLocal (void)
void * CmiGetNonLocalNodeQ (void)
static char * CopyMsg (char *msg, int len)
static CmiIdleStateCmiNotifyGetState (void)
static void CmiNotifyBeginIdle (CmiIdleState *s)
 Generally,.
static void CmiNotifyStillIdle (CmiIdleState *s)
void CmiNotifyIdle (void)
 CsvDeclare (CmiNodeState, NodeState)
void CmiMemLock (void)
void CmiMemUnlock (void)
void CmiYield (void)
static void CmiStartThreads (char **argv)
INLINE_KEYWORD int CmiNodeSpan (void)
INLINE_KEYWORD CMIQueue CmiMyRecvQueue (void)
INLINE_KEYWORD MPMCQueue CMIQueue CmiMyNodeQueue (void)
int CmiMyPe (void)
int CmiMyPeGlobal (void)
int CmiMyRank (void)
int CmiNodeSize (int node)
int CmiNodeFirst (int node)
int CmiNodeOf (int pe)
int CmiRankOf (int pe)
static int CmiState_hasMessage (void)
CmiCommHandle CmiInterSendNetworkFunc (int destPE, int partition, int size, char *msg, int mode)
int CmiDoesCMAWork ()
void CmiPushImmediateMsg (void *)
void CmiInterSyncSendFn (int destPE, int partition, int size, char *msg)
 CpvExtern (int, _urgentSend)
INLINE_KEYWORD CmiCommHandle CmiSendNetworkFunc (int destPE, int size, char *msg, int mode)
void CmiInterFreeSendFn (int destPE, int partition, int size, char *msg)
void CmiInterSyncNodeSendFn (int destNode, int partition, int size, char *msg)
void CmiInterFreeNodeSendFn (int destNode, int partition, int size, char *msg)
void createCustomPartitions (int numparts, int *partitionSize, int *nodeMap)
void setDefaultPartitionParams (void)
void create_topoaware_partitions (void)
void CmiSetNumPartitions (int nump)
void CmiSetMasterPartition (void)
void CmiSetPartitionSizes (char *sizes)
void CmiSetPartitionScheme (int scheme)
void CmiSetCustomPartitioning (void)
static void create_partition_map (char **argv)
void CmiCreatePartitions (char **argv)
int node_lToGTranslate (int node, int partition)
int pe_lToGTranslate (int pe, int partition)
INLINE_KEYWORD int node_gToLTranslate (int node)
INLINE_KEYWORD int pe_gToLTranslate (int pe)
int power_of_two_check (int n)
void check_and_set_queue_parameters ()
void ConverseCommonInit (char **argv)
 Main Converse initialization routine.
void CthInit (char **argv)
void ConverseCommonExit (void)
void ConverseExit (int exitcode)
void CmiAbortHelper (const char *source, const char *message, const char *suggestion, int tellDebugger, int framesToSkip)

Variables

FILE * debugLog = NULL
static int _exitcode
static int MSG_STATISTIC = 0
int msg_histogram [22]
static int CmiNodesDim
PartitionInfo _partitionInfo
int _Cmi_mype_global
int _Cmi_numpes_global
int _Cmi_mynode_global
int _Cmi_numnodes_global
static int _writeToStdout = 1
int _Cmi_myphysnode_numprocesses
int _Cmi_mynodesize
int _Cmi_mynode
int _Cmi_numnodes
int _Cmi_numpes
int userDrivenMode
int CharmLibInterOperate
static enum MACHINE_SMP_MODE Cmi_smp_mode_setting = COMM_THREAD_SEND_RECV
int Cmi_commthread = 0
int Cmi_nodestart = -1
static int Cmi_nodestartGlobal = -1
int networkProgressPeriod
int ccsRunning
static char ** Cmi_argv
static char ** Cmi_argvcopy
static CmiStartFn Cmi_startfn
static int Cmi_usrsched
static struct CmiStateStruct Cmi_state
int _Cmi_mype
int _Cmi_myrank
int cma_works
int cma_reg_msg
int cma_min_threshold
int cma_max_threshold
static int refcount = 0
int quietMode
int quietModeRequested
int DataNodeSize
int MaxDataNodes
int QueueUpperBound
int DataNodeWrap
int QueueWrap
int messageQueueOverflow


Enumeration Type Documentation

Enumerator:
INVALID_MODE 
COMM_THREAD_SEND_RECV 
COMM_THREAD_SEND_RECV 
COMM_THREAD_ONLY_RECV 
COMM_WORK_THREADS_SEND_RECV 
COMM_THREAD_NOT_EXIST 

Definition at line 176 of file machine-common-core.C.


Function Documentation

CsvDeclare ( CMIQueue  ,
procBcastQ   
)

CsvDeclare ( CMIQueue  ,
nodeBcastQ   
)

static int _cmi_log2 ( int  size  )  [static]

Definition at line 65 of file machine-common-core.C.

Referenced by CmiAsyncNodeSendFn(), CmiAsyncSendFn(), CmiInterFreeNodeSendFn(), and CmiInterSendNetworkFunc().

Here is the caller graph for this function:

static void handleOneBcastMsg ( int  size,
char *  msg 
) [static]

static void processBcastQs ( void   )  [static]

static INLINE_KEYWORD void processProcBcastMsg ( int  size,
char *  msg 
) [static]

static INLINE_KEYWORD void processNodeBcastMsg ( int  size,
char *  msg 
) [static]

static void SendSpanningChildrenProc ( int  size,
char *  msg 
) [static]

static void SendHyperCubeProc ( int  size,
char *  msg 
) [static]

static void SendSpanningChildrenNode ( int  size,
char *  msg 
) [static]

static void SendHyperCubeNode ( int  size,
char *  msg 
) [static]

static void SendSpanningChildren ( int  size,
char *  msg,
int  rankToAssign,
int  startNode 
) [static]

static void SendHyperCube ( int  size,
char *  msg,
int  rankToAssign,
int  startNode 
) [static]

void CmiSyncBroadcastFn ( int  size,
char *  msg 
)

Definition at line 320 of file machine-broadcast.C.

References CmiFree(), CmiSyncBroadcastFn1(), and CopyMsg().

Here is the call graph for this function:

CmiCommHandle CmiAsyncBroadcastFn ( int  size,
char *  msg 
)

Definition at line 343 of file machine-broadcast.C.

References CmiAbort().

Here is the call graph for this function:

void CmiFreeBroadcastFn ( int  size,
char *  msg 
)

Definition at line 333 of file machine-broadcast.C.

References CmiFree(), and CmiSyncBroadcastFn1().

Here is the call graph for this function:

void CmiSyncBroadcastAllFn ( int  size,
char *  msg 
)

Definition at line 351 of file machine-broadcast.C.

References CmiFree(), CmiMyPe(), CmiSyncBroadcastFn1(), CmiSyncSendFn(), and CopyMsg().

Here is the call graph for this function:

CmiCommHandle CmiAsyncBroadcastAllFn ( int  size,
char *  msg 
)

Definition at line 379 of file machine-broadcast.C.

References CmiAsyncBroadcastFn(), CmiSendSelf(), and CopyMsg().

Here is the call graph for this function:

void CmiFreeBroadcastAllFn ( int  size,
char *  msg 
)

Definition at line 365 of file machine-broadcast.C.

References CmiFree(), CmiGetReference(), CmiSendSelf(), CmiSyncBroadcastFn1(), and CopyMsg().

Here is the call graph for this function:

void CmiSyncNodeBroadcastFn ( int  size,
char *  msg 
)

Definition at line 386 of file machine-broadcast.C.

References CmiSyncNodeSendFn(), CQdCreate(), SendHyperCubeNode(), and SendSpanningChildrenNode().

Here is the call graph for this function:

CmiCommHandle CmiAsyncNodeeroadcastFn ( int  size,
char *  msg 
)

void CmiFreeNodeBroadcastFn ( int  size,
char *  msg 
)

Definition at line 406 of file machine-broadcast.C.

References CmiFree(), and CmiSyncNodeBroadcastFn().

Here is the call graph for this function:

void CmiSyncNodeBroadcastAllFn ( int  size,
char *  msg 
)

Definition at line 419 of file machine-broadcast.C.

References CmiSyncNodeBroadcastFn(), and CmiSyncNodeSendFn().

Here is the call graph for this function:

CmiCommHandle CmiAsyncNodeBroadcastAllFn ( int  size,
char *  msg 
)

Definition at line 424 of file machine-broadcast.C.

References CmiAsyncNodeBroadcastFn(), CmiSendNodeSelf(), and CopyMsg().

Here is the call graph for this function:

void CmiFreeNodeBroadcastAllFn ( int  size,
char *  msg 
)

Definition at line 429 of file machine-broadcast.C.

References CmiSendNodeSelf(), and CmiSyncNodeBroadcastFn().

Here is the call graph for this function:

CpvDeclare ( void *  ,
CmiLocalQueue   
)

void CmiSuspendedTaskEnqueue ( int  targetRank,
void *  data 
)

void* CmiSuspendedTaskPop ( void   ) 

CpvDeclare ( unsigned  ,
networkProgressCount   
)

CMK_NORETURN void CmiAbort ( const char *  why  ) 

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.

References abort().

Here is the call graph for this function:

static void PerrorExit ( const char *  msg  )  [static]

Definition at line 447 of file machine-common-core.C.

Referenced by call_startfn(), and CmiStartThreads().

Here is the caller graph for this function:

static INLINE_KEYWORD void handleOneRecvedMsg ( int  size,
char *  msg 
) [static]

Definition at line 528 of file machine-common-core.C.

References cma_reg_msg, CmiPushNode(), CmiPushPE(), CMK_CMA_ACK_MSG, CMK_CMA_MD_MSG, handleOneBcastMsg(), handleOneCmaAckMsg(), handleOneCmaMdMsg(), and TraceTimerCommon().

Referenced by CmiSendMessagePxshm(), CmiSendMessageXpmem(), PumpMsgs(), PumpMsgsBlocking(), and SendMsgBuf().

Here is the call graph for this function:

Here is the caller graph for this function:

static void SendToPeers ( int  size,
char *  msg 
) [static]

Definition at line 565 of file machine-common-core.C.

References CmiPushPE(), and CopyMsg().

Referenced by CmiForwardMsgToPeers(), SendHyperCubeProc(), and SendSpanningChildrenProc().

Here is the call graph for this function:

Here is the caller graph for this function:

void CmiPushPE ( int  rank,
void *  msg 
)

void CmiPushNode ( void *  msg  ) 

static void CmiSendSelf ( char *  msg  )  [static]

Definition at line 581 of file machine-common-core.C.

References CdsFifo_Enqueue(), CmiHandleImmediate(), and CmiPushImmediateMsg().

Referenced by CmiAsyncBroadcastAllFn(), CmiFreeBroadcastAllFn(), and CmiInterFreeSendFn().

Here is the call graph for this function:

Here is the caller graph for this function:

void CmiSyncSendFn ( int  destPE,
int  size,
char *  msg 
)

CmiCommHandle CmiAsyncSendFn ( int  destPE,
int  size,
char *  msg 
)

void CmiFreeSendFn ( int  destPE,
int  size,
char *  msg 
)

static void CmiSendNodeSelf ( char *  msg  )  [static]

Definition at line 745 of file machine-common-core.C.

References _immRunning, CmiHandleImmediate(), CmiLock(), CmiPushImmediateMsg(), CmiUnlock(), and MPMCQueuePush().

Referenced by CmiAsyncNodeBroadcastAllFn(), CmiFreeNodeBroadcastAllFn(), and CmiInterFreeNodeSendFn().

Here is the call graph for this function:

Here is the caller graph for this function:

void CmiSyncNodeSendFn ( int  destNode,
int  size,
char *  msg 
)

CmiCommHandle CmiAsyncNodeSendFn ( int  destNode,
int  size,
char *  msg 
)

void CmiFreeNodeSendFn ( int  destNode,
int  size,
char *  msg 
)

void ConverseInit ( int  argc,
char **  argv,
CmiStartFn  fn,
int  usched,
int  initret 
)

static void ConverseRunPE ( int  everReturn  )  [static]

The reason to initialize this variable here: cmiArgDebugFlag is possibly accessed in CmiPrintf/CmiError etc., therefore, we have to initialize this variable before any calls to those functions (such as CmiPrintf). Otherwise, we may encounter a memory segmentation fault (bad memory access). Note, even testing CpvInitialized(cmiArgDebugFlag) doesn't help to solve this problem because the variable indicating whether cmiArgDebugFlag is initialized or not is not initialized, thus possibly causing another bad memory access. --Chao Mei

Definition at line 1496 of file machine-common-core.C.

References _immediateReady, CcdCallOnConditionKeep(), CharmLibInterOperate, Cmi_argv, Cmi_argvcopy, Cmi_startfn, Cmi_usrsched, CmiCopyArgs(), CmiGetArgc(), CmiGetState(), CmiInitNotifyCommThdScheme(), CmiMyRank(), CmiNodeAllBarrier(), CmiNotifyBeginIdle(), CmiNotifyGetState(), CmiNotifyStillIdle(), CommunicationServerThread(), ConverseCommonInit(), ConverseExit(), CsdScheduler(), CthInit(), CmiStateStruct::localqueue, LrtsPostCommonInit(), and LrtsPreCommonInit().

Referenced by call_startfn(), and ConverseInit().

Here is the call graph for this function:

Here is the caller graph for this function:

static INLINE_KEYWORD void AdvanceCommunication ( int  whenidle  )  [static]

Definition at line 1606 of file machine-common-core.C.

References CmiHandleImmediate(), CmiMyRank(), CommunicationServerPxshm(), LrtsAdvanceCommunication(), and processBcastQs().

Referenced by CmiGetNonLocal(), CmiGetNonLocalNodeQ(), and CommunicationServer().

Here is the call graph for this function:

Here is the caller graph for this function:

static void CommunicationServer ( int  sleepTime  )  [static]

Definition at line 1638 of file machine-common-core.C.

References _exitcode, AdvanceCommunication(), CharmLibInterOperate, ckExitComplete, CmiExitXpmem(), CmiNodeAllBarrier(), ConverseCommonExit(), LrtsDrainResources(), LrtsExit(), and memory_order_acquire.

Referenced by call_startfn().

Here is the call graph for this function:

Here is the caller graph for this function:

void CommunicationServerThread ( int  sleepTime  ) 

void* CmiGetNonLocal ( void   ) 

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.

void* CmiGetNonLocalNodeQ ( void   ) 

static char* CopyMsg ( char *  msg,
int  len 
) [static]

static CmiIdleState* CmiNotifyGetState ( void   )  [static]

Referenced by CmiGetNonLocalNodeQ(), and ConverseRunPE().

Here is the caller graph for this function:

static void CmiNotifyBeginIdle ( CmiIdleState s  )  [static]

Generally,.

CmiNotifyIdle is used in non-SMP mode when the proc is idle. When the proc is idle, AdvanceCommunication needs to be called.

CmiNotifyStillIdle and CmiNotifyBeginIdle are used in SMP mode.

Different layers have choices of registering different callbacks for idle state.

Referenced by CmiGetNonLocalNodeQ(), and ConverseRunPE().

Here is the caller graph for this function:

static void CmiNotifyStillIdle ( CmiIdleState s  )  [static]

Referenced by CmiGetNonLocalNodeQ(), CmiSendMessagePxshm(), CmiSendMessageXpmem(), and ConverseRunPE().

Here is the caller graph for this function:

void CmiNotifyIdle ( void   ) 

CsvDeclare ( CmiNodeState  ,
NodeState   
)

void CmiMemLock ( void   ) 

Definition at line 358 of file machine-common-core.C.

Referenced by CmiMemoryMark(), CmiMemoryMarkBlock(), CmiMemorySweep(), free_nomigrate(), and malloc_nomigrate().

Here is the caller graph for this function:

void CmiMemUnlock ( void   ) 

Definition at line 359 of file machine-common-core.C.

Referenced by CmiMemoryMark(), CmiMemoryMarkBlock(), CmiMemorySweep(), free_nomigrate(), and malloc_nomigrate().

Here is the caller graph for this function:

void CmiYield ( void   ) 

Definition at line 364 of file machine-common-core.C.

References sleep().

Referenced by CmiGetNonLocalNodeQ(), and ConverseExit().

Here is the call graph for this function:

Here is the caller graph for this function:

static void CmiStartThreads ( char **  argv  )  [static]

Definition at line 368 of file machine-common-core.C.

References _Cmi_mynode_global, _Cmi_mype, _Cmi_mype_global, _Cmi_myrank, Cmi_nodestart, Cmi_state, and CmiStateInit().

Referenced by ConverseInit().

Here is the call graph for this function:

Here is the caller graph for this function:

INLINE_KEYWORD int CmiNodeSpan ( void   ) 

Definition at line 375 of file machine-common-core.C.

INLINE_KEYWORD CMIQueue CmiMyRecvQueue ( void   ) 

Definition at line 380 of file machine-common-core.C.

References CmiGetState(), and CmiStateStruct::recv.

Here is the call graph for this function:

INLINE_KEYWORD MPMCQueue CMIQueue CmiMyNodeQueue ( void   ) 

Definition at line 391 of file machine-common-core.C.

int CmiMyPe ( void   ) 

Definition at line 396 of file machine-common-core.C.

References CmiGetState(), and CmiStateStruct::pe.

Referenced by __cmi_assert(), _bcastQD1(), _bcastQD2(), _callWhenIdle(), _checkpointBarrierAckHandler(), _createTracecounter(), _dummyMigrationHandler(), _getCheckpointHandler(), _getGlobalStepHandler(), _getRestartCheckpointHandler(), _handlePhase0(), _handlePhase1(), _handlePhase2(), _initCharm(), _initHandler(), _libExitHandler(), _messageLoggingExit(), _parseCommandLineOpts(), _qdCommHandler(), _qdHandler(), _receivedDetDataHandler(), _receivedTNDataHandler(), _receiveLocationHandler(), _receiveMigrationNoticeAckHandler(), _recvCheckpointHandler(), _recvGlobalStepHandler(), _recvRestartCheckpointHandler(), _sendDetsReplyHandler(), _sendReadonlies(), _startCheckpointHandler(), _storeCheckpointHandler(), _updateHomeRequestHandler(), _verifyAckHandler(), _verifyAckRequestHandler(), ackEntryMethodHandler(), bad_location(), TraceCounter::beginExecute(), TraceCounter::beginOverview(), TraceCounter::beginPack(), TraceCounter::beginUnpack(), CkArray::broadcastHomeElements(), CcsImpl_reply(), CcsInit(), CfutureCreate(), CfutureDestroy(), CfutureStoreBuffer(), CfutureWait(), check_range(), CkArray::CkArray(), CkCppInterpreter::CkCppInterpreter(), CkDieNow(), Converse::CkMyPe(), CldAckNoTaskHandler(), CldAverageHandler(), CldBalancePeriod(), CldComputeNeighborData(), CldEnqueue(), CldGraphModuleInit(), CldMinAvg(), CldModuleGeneralInit(), CldModuleInit(), CldMoveAllSeedsAway(), CldNodeEnqueue(), CldOtherInit(), CldReadNeighborData(), CldReadytoExec(), CldSendLoad(), CldSetPEBitVector(), CldStillIdle(), clearUpMigratedRetainedLists(), CmiAbortHelper(), CmiAddCLA(), CmiAlloc(), CmiArgGivingUsage(), CmiArgInit(), CmiBacktracePrint(), CmiCheckAffinity(), CmiCreateCompressPersistent(), CmiCreateCompressPersistentSize(), CmiCreatePersistent(), CmiCreateReceiverPersistent(), CmiEstablishGroup(), CmiGetDynamicReduction(), CmiGetDynamicReductionRemote(), CmiGetNonLocal(), CmiGetNonLocalNodeQ(), CmiGlobalReduce(), CmiGlobalReduceStruct(), CmiInitCell(), CmiInitCPUAffinity(), CmiInitMemAffinity(), CmiInterFreeSendFn(), CmiInterSendNetworkFunc(), CmiIsomallocBlockListPup(), CmiIsomallocInit(), CmiListReduce(), CmiListReduceStruct(), CmiMemorySweep(), CmiMulticastDeliver(), CmiMultiMsgHandler(), CmiPrintCLAs(), CmiProcessPriority(), CmiReduce(), CmiReduceID(), CmiReduceStruct(), CmiReduceStructID(), CmiRegisterHandlerGlobal(), CmiSendMessageCma(), CmiSyncBroadcastAllFn(), CmiSyncBroadcastFn1(), CmiSyncListSendFn(), CmiTLSInit(), converse_handlerBegin(), converse_handlerEnd(), ConverseCommonInit(), ConverseDeliver(), ConverseExit(), copyOut(), CountLogPool::CountLogPool(), CPathGetEltset(), CPathMakeArray(), CPathSendHandler(), cpd_memory_single_pup(), CpdNotify(), CpdStartGdb(), Cpthread_cond_broadcast(), Cpthread_cond_destroy(), Cpthread_cond_init(), Cpthread_cond_signal(), Cpthread_cond_wait(), Cpthread_mutex_destroy(), Cpthread_mutex_init(), Cpthread_mutex_lock(), Cpthread_mutex_trylock(), Cpthread_mutex_unlock(), cpuAffinityHandler(), cpuAffinityRecvHandler(), CQdBcastQD1(), CQdBcastQD2(), CQdHandlePhase0(), CQdHandlePhase1(), CQdHandlePhase2(), CQdStateCreate(), CsdInit(), CtgInit(), CthThreadBaseInit(), CWeb_Collect(), CWeb_Reduce(), CWebHandler(), CkArrayBroadcaster::deliver(), disable_isomalloc(), disabled_map(), StatTable::doReduction(), emptyReduction(), TraceCounter::endExecute(), TraceCounter::endOverview(), TraceCounter::endPack(), TraceCounter::endUnpack(), expand_ccd_heap(), find_largest_free_region(), finishedCheckpointLoadBalancing(), gengraph(), getCheckPointPE(), getGlobalStep(), getNewPagetable(), getNUMANidByRank(), getReverseCheckPointPE(), heartBeatCheckHandler(), heartBeatPartner(), HigherPriorityWork(), informLocationHome(), StatTable::init(), init_ranges(), initQd(), initTraceTauBOC(), CkMemCheckPT::inmem_restore(), CkMemCheckPT::isMaster(), isomalloc_internal_alloc_block(), isomallocfn(), LrtsInitCpuTopo(), machine_procBusy(), machine_procIdle(), map_slots(), memAbort(), memory_check(), mempool_free(), meta_aligned_alloc(), meta_calloc(), meta_cfree(), meta_free(), meta_init(), meta_malloc(), meta_memalign(), meta_posix_memalign(), meta_pvalloc(), meta_realloc(), meta_valloc(), ntohl(), on_timeout(), one_slotOP(), CountLogPool::openFile(), TraceLogger::openLogFiles(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), prepare_slotmsg(), CkNcpyBuffer::print(), print_cpu_affinity(), print_mem_affinity(), print_myslots(), print_node0(), print_thread_affinity(), printBGP_UPC_Counters(), printSlot(), processReceivedTN(), CentralLB::ProcessReceiveMigration(), PumpMsgsBlocking(), CkLocMgr::pup(), ChareMlogData::pup(), pupArrayElementsSkip(), QdState::QdState(), readBlacklist(), CentralLB::ReceiveStats(), TraceCounter::registerArg(), TraceLogger::RegisterLanguage(), ReleasePostedMessages(), req_fw_handler(), ChareMlogData::searchRestoredLocalQ(), seedBalancerExit(), sendCheckpointData(), sendDummyMigrationCounts(), sendGroupMsg(), sendLocalMsg(), sendMlogLocation(), sendMsg(), SendMsgBuf(), sendRecvDoneMsgToPeers(), sendRemoveLogRequests(), CentralLB::SendStats(), SendTasktoPe(), set_process_affinity(), set_thread_affinity(), slotAbort(), StartInteropScheduler(), startLoadBalancingMlog(), startMlogCheckpoint(), StatTable::StatTable(), StatTableReduction(), status(), StealLoad(), StopInteropScheduler(), TraceCounter::switchCounters(), TaskQueuePop(), TraceCounter::traceBegin(), TraceCounter::traceClose(), traceCommonInit(), TraceCounter::traceEnd(), TraceCounter::traceInit(), TraceCounter::traceWriteSts(), try_largest_mmap_region(), unmap_slots(), CountLogPool::write(), StatTable::write(), CountLogPool::writeSts(), and zlib_compress().

Here is the call graph for this function:

int CmiMyPeGlobal ( void   ) 

Definition at line 402 of file machine-common-core.C.

References CmiGetState(), and CmiStateStruct::pe.

Referenced by CmiInitCPUAffinity().

Here is the call graph for this function:

Here is the caller graph for this function:

int CmiMyRank ( void   ) 

int CmiNodeSize ( int  node  ) 

Definition at line 408 of file machine-common-core.C.

References _Cmi_mynodesize.

Referenced by _speedHdlr(), ccs_getinfo(), and LrtsNodeSize().

Here is the caller graph for this function:

int CmiNodeFirst ( int  node  ) 

int CmiNodeOf ( int  pe  ) 

int CmiRankOf ( int  pe  ) 

static int CmiState_hasMessage ( void   )  [static]

Definition at line 424 of file machine-common-core.C.

References CmiGetState(), and CmiIdleLock_hasMessage().

Here is the call graph for this function:

CmiCommHandle CmiInterSendNetworkFunc ( int  destPE,
int  partition,
int  size,
char *  msg,
int  mode 
)

int CmiDoesCMAWork ( void   ) 

Definition at line 441 of file machine-common-core.C.

References cma_works.

Referenced by findTransferMode().

Here is the caller graph for this function:

void CmiInterSyncSendFn ( int  destPE,
int  partition,
int  size,
char *  msg 
)

Definition at line 600 of file machine-common-core.C.

References CmiInterFreeSendFn(), and CopyMsg().

Here is the call graph for this function:

CpvExtern ( int  ,
_urgentSend   
)

INLINE_KEYWORD CmiCommHandle CmiSendNetworkFunc ( int  destPE,
int  size,
char *  msg,
int  mode 
)

Definition at line 620 of file machine-common-core.C.

References CmiInterSendNetworkFunc(), and CMK_REG_NO_CMA_MSG.

Referenced by CmiAsyncNodeSendFn(), CmiAsyncSendFn(), SendHyperCube(), and SendSpanningChildren().

Here is the call graph for this function:

Here is the caller graph for this function:

void CmiInterFreeSendFn ( int  destPE,
int  partition,
int  size,
char *  msg 
)

Definition at line 687 of file machine-common-core.C.

References CmiInterSendNetworkFunc(), CmiMyPe(), CmiNodeOf(), CmiPushPE(), CmiRankOf(), CmiSendSelf(), CMK_REG_NO_CMA_MSG, and CQdCreate().

Referenced by CmiFreeSendFn(), and CmiInterSyncSendFn().

Here is the call graph for this function:

Here is the caller graph for this function:

void CmiInterSyncNodeSendFn ( int  destNode,
int  partition,
int  size,
char *  msg 
)

Definition at line 771 of file machine-common-core.C.

References CmiInterFreeNodeSendFn(), and CopyMsg().

Here is the call graph for this function:

void CmiInterFreeNodeSendFn ( int  destNode,
int  partition,
int  size,
char *  msg 
)

Definition at line 781 of file machine-common-core.C.

References _cmi_log2(), CmiInterSendNetworkFunc(), CmiNodeFirst(), CmiSendNodeSelf(), CMK_REG_NO_CMA_MSG, CQdCreate(), msg_histogram, and MSG_STATISTIC.

Referenced by CmiFreeNodeSendFn(), and CmiInterSyncNodeSendFn().

Here is the call graph for this function:

Here is the caller graph for this function:

void createCustomPartitions ( int  numparts,
int partitionSize,
int nodeMap 
)

Definition at line 3 of file custom_partitioner.C.

Referenced by create_topoaware_partitions().

Here is the caller graph for this function:

void setDefaultPartitionParams ( void   ) 

Definition at line 5 of file set_partition_params.C.

Referenced by create_partition_map().

Here is the caller graph for this function:

void create_topoaware_partitions ( void   ) 

void CmiSetNumPartitions ( int  nump  ) 

Definition at line 890 of file machine-common-core.C.

References PartitionInfo::numPartitions.

void CmiSetMasterPartition ( void   ) 

Definition at line 894 of file machine-common-core.C.

References CmiAbort(), PARTITION_DEFAULT, PARTITION_MASTER, and PartitionInfo::type.

Here is the call graph for this function:

void CmiSetPartitionSizes ( char *  sizes  ) 

Definition at line 901 of file machine-common-core.C.

References CmiAbort(), length, malloc(), PARTITION_DEFAULT, PARTITION_PREFIX, PartitionInfo::partsizes, and PartitionInfo::type.

Here is the call graph for this function:

void CmiSetPartitionScheme ( int  scheme  ) 

Definition at line 914 of file machine-common-core.C.

References PartitionInfo::isTopoaware, and PartitionInfo::scheme.

void CmiSetCustomPartitioning ( void   ) 

Definition at line 919 of file machine-common-core.C.

References PartitionInfo::isTopoaware, and PartitionInfo::scheme.

static void create_partition_map ( char **  argv  )  [static]

void CmiCreatePartitions ( char **  argv  ) 

Definition at line 1069 of file machine-common-core.C.

References _Cmi_mynode, _Cmi_mynode_global, _Cmi_mynodesize, _Cmi_numnodes, _Cmi_numnodes_global, _Cmi_numpes_global, Cmi_nodestart, Cmi_nodestartGlobal, CmiAbort(), create_partition_map(), and PartitionInfo::numPartitions.

Referenced by ConverseInit().

Here is the call graph for this function:

Here is the caller graph for this function:

int node_lToGTranslate ( int  node,
int  partition 
)

Definition at line 1091 of file machine-common-core.C.

References CmiAbort(), PartitionInfo::isTopoaware, PartitionInfo::nodeMap, PARTITION_DEFAULT, PARTITION_MASTER, PARTITION_PREFIX, PARTITION_SINGLETON, PartitionInfo::partitionPrefix, PartitionInfo::partitionSize, rank, and PartitionInfo::type.

Referenced by pe_lToGTranslate().

Here is the call graph for this function:

Here is the caller graph for this function:

int pe_lToGTranslate ( int  pe,
int  partition 
)

Definition at line 1116 of file machine-common-core.C.

References CmiNodeOf(), CmiRankOf(), node_lToGTranslate(), PARTITION_SINGLETON, and PartitionInfo::type.

Here is the call graph for this function:

INLINE_KEYWORD int node_gToLTranslate ( int  node  ) 

Definition at line 1127 of file machine-common-core.C.

References CmiAbort().

Here is the call graph for this function:

INLINE_KEYWORD int pe_gToLTranslate ( int  pe  ) 

Definition at line 1132 of file machine-common-core.C.

References CmiAbort().

Here is the call graph for this function:

int power_of_two_check ( int  n  ) 

Definition at line 1160 of file machine-common-core.C.

Referenced by check_and_set_queue_parameters().

Here is the caller graph for this function:

void check_and_set_queue_parameters (  ) 

Definition at line 1166 of file machine-common-core.C.

References CmiAbort(), CmiPrintf(), DataNodeSize, DataNodeWrap, MaxDataNodes, power_of_two_check(), QueueUpperBound, and QueueWrap.

Referenced by ConverseInit().

Here is the call graph for this function:

Here is the caller graph for this function:

void CthInit ( char **  argv  ) 

Definition at line 1077 of file threads.C.

References CmiThreadIs_flag, CthBaseInit(), CthDummy(), CthThreadInit(), malloc(), p, size_t, CthProcInfo_s::stackbase, CthProcInfo_s::switchbuf, CthProcInfo_s::switchbuf_sp, and PUP::t.

Referenced by ConverseRunPE().

Here is the call graph for this function:

Here is the caller graph for this function:

void ConverseExit ( int  exitcode  ) 

void CmiAbortHelper ( const char *  source,
const char *  message,
const char *  suggestion,
int  tellDebugger,
int  framesToSkip 
)

Definition at line 1731 of file machine-common-core.C.

References CmiError(), CmiExitPxshm(), CmiExitXpmem(), CmiMyPe(), CmiPrintStackTrace(), CpdAborting(), and LrtsAbort().

Referenced by CmiAbort(), and SendMsgBuf().

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

int _exitcode [static]

Definition at line 60 of file machine-common-core.C.

int MSG_STATISTIC = 0 [static]

int CmiNodesDim [static]

Definition at line 76 of file machine-common-core.C.

Referenced by ConverseInit(), and SendHyperCube().

Definition at line 151 of file machine-common-core.C.

Definition at line 152 of file machine-common-core.C.

Referenced by CmiStartThreads().

Definition at line 153 of file machine-common-core.C.

Referenced by CmiCreatePartitions().

Definition at line 155 of file machine-common-core.C.

Referenced by CmiCreatePartitions(), and create_partition_map().

int _writeToStdout = 1 [static]

Definition at line 156 of file machine-common-core.C.

Referenced by ConverseInit().

Definition at line 159 of file machine-common-core.C.

Referenced by CmiSendMessagePxshm().

enum MACHINE_SMP_MODE Cmi_smp_mode_setting = COMM_THREAD_SEND_RECV [static]

Definition at line 222 of file machine-common-core.C.

Referenced by CmiNodeAllBarrier(), CmiStartThreads(), and traceCommonInit().

int Cmi_nodestartGlobal = -1 [static]

Definition at line 231 of file machine-common-core.C.

Referenced by CmiCreatePartitions().

Definition at line 242 of file machine-common-core.C.

Referenced by ConverseInit().

char** Cmi_argv [static]

Definition at line 300 of file machine-common-core.C.

Referenced by ConverseInit(), and ConverseRunPE().

char** Cmi_argvcopy [static]

Definition at line 301 of file machine-common-core.C.

Referenced by ConverseInit(), and ConverseRunPE().

Definition at line 302 of file machine-common-core.C.

Referenced by ConverseInit(), and ConverseRunPE().

int Cmi_usrsched [static]

Definition at line 303 of file machine-common-core.C.

Referenced by ConverseInit(), and ConverseRunPE().

struct CmiStateStruct Cmi_state [static]

Definition at line 354 of file machine-common-core.C.

Referenced by CmiStartThreads().

Definition at line 355 of file machine-common-core.C.

Referenced by CkMessageWatcherInit(), and CmiStartThreads().

Definition at line 356 of file machine-common-core.C.

Referenced by CmiStartThreads().

Definition at line 439 of file machine-common-core.C.

Referenced by CmiDoesCMAWork(), CmiInitCma(), and ConverseInit().

Definition at line 439 of file machine-common-core.C.

Referenced by CmiInterSendNetworkFunc(), and ConverseInit().

Definition at line 439 of file machine-common-core.C.

Referenced by CmiInterSendNetworkFunc(), and ConverseInit().

int refcount = 0 [static]

Definition at line 612 of file machine-common-core.C.

Referenced by LocalBarrier::AtBarrier(), and CmiInterSendNetworkFunc().


Generated on Mon Sep 21 07:56:41 2020 for Charm++ by  doxygen 1.5.5