conv-core/quiescence.c File Reference

Go to the source code of this file.

Functions

 CpvDeclare (CQdState, cQdState)
int CQdMsgGetPhase (CQdMsg msg)
void CQdMsgSetPhase (CQdMsg msg, int p)
int CQdMsgGetCreated (CQdMsg msg)
void CQdMsgSetCreated (CQdMsg msg, int c)
int CQdMsgGetProcessed (CQdMsg msg)
void CQdMsgSetProcessed (CQdMsg msg, int p)
int CQdMsgGetDirty (CQdMsg msg)
void CQdMsgSetDirty (CQdMsg msg, int d)
int CQdGetCreated (CQdState state)
void CQdCreate (CQdState state, int n)
int CQdGetProcessed (CQdState state)
void CQdProcess (CQdState state, int n)
void CQdPropagate (CQdState state, CQdMsg msg)
int CQdGetParent (CQdState state)
int CQdGetCCreated (CQdState state)
int CQdGetCProcessed (CQdState state)
void CQdSubtreeCreate (CQdState state, int c)
void CQdSubtreeProcess (CQdState state, int p)
int CQdGetStage (CQdState state)
void CQdSetStage (CQdState state, int p)
void CQdReported (CQdState state)
int CQdAllReported (CQdState state)
void CQdReset (CQdState state)
void CQdMarkProcessed (CQdState state)
int CQdIsDirty (CQdState state)
void CQdSubtreeSetDirty (CQdState state, int d)
CQdState CQdStateCreate (void)
static void CQdBcastQD1 (CQdState state, CQdMsg msg)
static void CQdBcastQD2 (CQdState state, CQdMsg msg)
static void CQdHandlePhase0 (CQdState state, CQdMsg msg)
static void CQdHandlePhase1 (CQdState state, CQdMsg msg)
static void CQdHandlePhase2 (CQdState state, CQdMsg msg)
static void CQdCallWhenIdle (CQdMsg msg)
void CQdHandler (CQdMsg msg)
void CQdRegisterCallback (CQdVoidFn fn, void *arg)
void CQdAnnounceHandler (CQdMsg msg)
void CQdCpvInit (void)
void CQdInit (void)
void CmiStartQD (CQdVoidFn fn, void *arg)

Variables

unsigned int _CQdHandlerIdx
unsigned int _CQdAnnounceHandlerIdx


Function Documentation

CpvDeclare ( CQdState  ,
cQdState   
)

int CQdMsgGetPhase ( CQdMsg  msg  ) 

Definition at line 35 of file quiescence.c.

References ConvQdMsg::phase.

Referenced by CQdCallWhenIdle().

void CQdMsgSetPhase ( CQdMsg  msg,
int  p 
)

Definition at line 38 of file quiescence.c.

References p, and ConvQdMsg::phase.

Referenced by CmiStartQD(), CQdBcastQD1(), and CQdBcastQD2().

int CQdMsgGetCreated ( CQdMsg  msg  ) 

Definition at line 41 of file quiescence.c.

References ConvQdMsg::p1, ConvQdMsg::phase, and ConvQdMsg::u.

Referenced by CQdHandlePhase1().

void CQdMsgSetCreated ( CQdMsg  msg,
int  c 
)

Definition at line 44 of file quiescence.c.

References c, ConvQdMsg::p1, ConvQdMsg::phase, and ConvQdMsg::u.

Referenced by CQdBcastQD1(), and CQdHandlePhase1().

int CQdMsgGetProcessed ( CQdMsg  msg  ) 

Definition at line 47 of file quiescence.c.

References ConvQdMsg::p1, ConvQdMsg::phase, and ConvQdMsg::u.

Referenced by CQdHandlePhase1().

void CQdMsgSetProcessed ( CQdMsg  msg,
int  p 
)

Definition at line 50 of file quiescence.c.

References p, ConvQdMsg::p1, ConvQdMsg::phase, and ConvQdMsg::u.

Referenced by CQdBcastQD1(), and CQdHandlePhase1().

int CQdMsgGetDirty ( CQdMsg  msg  ) 

Definition at line 53 of file quiescence.c.

References ConvQdMsg::p2, ConvQdMsg::phase, and ConvQdMsg::u.

Referenced by CQdHandlePhase2().

void CQdMsgSetDirty ( CQdMsg  msg,
int  d 
)

Definition at line 56 of file quiescence.c.

References ConvQdMsg::p2, ConvQdMsg::phase, and ConvQdMsg::u.

Referenced by CQdBcastQD2(), and CQdHandlePhase2().

int CQdGetCreated ( CQdState  state  ) 

Definition at line 60 of file quiescence.c.

References ConvQdState::mCreated.

void CQdCreate ( CQdState  state,
int  n 
)

Definition at line 63 of file quiescence.c.

References ConvQdState::mCreated, and n.

int CQdGetProcessed ( CQdState  state  ) 

Definition at line 66 of file quiescence.c.

References ConvQdState::mProcessed.

void CQdProcess ( CQdState  state,
int  n 
)

Definition at line 69 of file quiescence.c.

References ConvQdState::mProcessed, and n.

void CQdPropagate ( CQdState  state,
CQdMsg  msg 
)

Definition at line 72 of file quiescence.c.

References _CQdHandlerIdx, ConvQdState::children, Converse::CmiSyncSend(), CQdCreate(), and ConvQdState::nChildren.

Referenced by CQdBcastQD1(), and CQdBcastQD2().

int CQdGetParent ( CQdState  state  ) 

Definition at line 82 of file quiescence.c.

References ConvQdState::parent.

Referenced by CQdHandlePhase1(), and CQdHandlePhase2().

int CQdGetCCreated ( CQdState  state  ) 

Definition at line 85 of file quiescence.c.

References ConvQdState::cCreated.

Referenced by CQdHandlePhase1().

int CQdGetCProcessed ( CQdState  state  ) 

Definition at line 88 of file quiescence.c.

References ConvQdState::cProcessed.

Referenced by CQdHandlePhase1().

void CQdSubtreeCreate ( CQdState  state,
int  c 
)

Definition at line 91 of file quiescence.c.

References c, and ConvQdState::cCreated.

Referenced by CQdHandlePhase1().

void CQdSubtreeProcess ( CQdState  state,
int  p 
)

Definition at line 94 of file quiescence.c.

References ConvQdState::cProcessed, and p.

Referenced by CQdHandlePhase1().

int CQdGetStage ( CQdState  state  ) 

Definition at line 97 of file quiescence.c.

References ConvQdState::stage.

Referenced by CQdHandlePhase0(), CQdHandlePhase1(), and CQdHandlePhase2().

void CQdSetStage ( CQdState  state,
int  p 
)

Definition at line 100 of file quiescence.c.

References p, and ConvQdState::stage.

Referenced by CQdBcastQD1(), CQdBcastQD2(), CQdHandlePhase1(), and CQdHandlePhase2().

void CQdReported ( CQdState  state  ) 

Definition at line 103 of file quiescence.c.

References ConvQdState::nReported.

Referenced by CQdHandlePhase1(), and CQdHandlePhase2().

int CQdAllReported ( CQdState  state  ) 

Definition at line 106 of file quiescence.c.

References ConvQdState::nChildren, and ConvQdState::nReported.

Referenced by CQdHandlePhase1(), and CQdHandlePhase2().

void CQdReset ( CQdState  state  ) 

Definition at line 109 of file quiescence.c.

References ConvQdState::cCreated, ConvQdState::cDirty, ConvQdState::cProcessed, and ConvQdState::nReported.

Referenced by CQdBcastQD1(), CQdBcastQD2(), CQdHandlePhase1(), and CQdHandlePhase2().

void CQdMarkProcessed ( CQdState  state  ) 

Definition at line 115 of file quiescence.c.

References ConvQdState::mProcessed, and ConvQdState::oProcessed.

Referenced by CQdBcastQD1().

int CQdIsDirty ( CQdState  state  ) 

Definition at line 118 of file quiescence.c.

References ConvQdState::cDirty, ConvQdState::mProcessed, and ConvQdState::oProcessed.

Referenced by CQdBcastQD2(), and CQdHandlePhase2().

void CQdSubtreeSetDirty ( CQdState  state,
int  d 
)

Definition at line 121 of file quiescence.c.

References ConvQdState::cDirty.

Referenced by CQdHandlePhase2().

CQdState CQdStateCreate ( void   ) 

Definition at line 124 of file quiescence.c.

References ConvQdState::cCreated, ConvQdState::cDirty, ConvQdState::children, CmiMyPe(), CmiNumSpanTreeChildren(), CmiSpanTreeChildren(), CmiSpanTreeParent(), ConvQdState::cProcessed, malloc(), ConvQdState::mCreated, ConvQdState::mProcessed, ConvQdState::nChildren, ConvQdState::nReported, ConvQdState::oProcessed, ConvQdState::parent, and ConvQdState::stage.

Referenced by CQdCpvInit().

static void CQdBcastQD1 ( CQdState  state,
CQdMsg  msg 
) [static]

Definition at line 151 of file quiescence.c.

References CmiMyPe(), Converse::CmiSyncSendAndFree(), CQdCreate(), CQdGetCreated(), CQdGetProcessed(), CQdMarkProcessed(), CQdMsgSetCreated(), CQdMsgSetPhase(), CQdMsgSetProcessed(), CQdPropagate(), CQdReset(), and CQdSetStage().

Referenced by CQdHandlePhase0(), CQdHandlePhase1(), and CQdHandlePhase2().

static void CQdBcastQD2 ( CQdState  state,
CQdMsg  msg 
) [static]

Definition at line 166 of file quiescence.c.

References CmiMyPe(), Converse::CmiSyncSendAndFree(), CQdCreate(), CQdIsDirty(), CQdMsgSetDirty(), CQdMsgSetPhase(), CQdPropagate(), CQdReset(), and CQdSetStage().

Referenced by CQdHandlePhase1().

static void CQdHandlePhase0 ( CQdState  state,
CQdMsg  msg 
) [static]

Definition at line 179 of file quiescence.c.

References CmiFree(), CmiMyPe(), CQdBcastQD1(), and CQdGetStage().

Referenced by CQdCallWhenIdle().

static void CQdHandlePhase1 ( CQdState  state,
CQdMsg  msg 
) [static]

Definition at line 189 of file quiescence.c.

References CmiAbort(), CmiFree(), CmiMyPe(), Converse::CmiSyncSendAndFree(), CQdAllReported(), CQdBcastQD1(), CQdBcastQD2(), CQdCreate(), CQdGetCCreated(), CQdGetCProcessed(), CQdGetParent(), CQdGetStage(), CQdMsgGetCreated(), CQdMsgGetProcessed(), CQdMsgSetCreated(), CQdMsgSetProcessed(), CQdReported(), CQdReset(), CQdSetStage(), CQdSubtreeCreate(), and CQdSubtreeProcess().

Referenced by CQdCallWhenIdle().

static void CQdHandlePhase2 ( CQdState  state,
CQdMsg  msg 
) [static]

Definition at line 228 of file quiescence.c.

References _CQdAnnounceHandlerIdx, CmiFree(), CmiMyPe(), Converse::CmiSyncBroadcastAllAndFree(), Converse::CmiSyncSendAndFree(), CQdAllReported(), CQdBcastQD1(), CQdCreate(), CQdGetParent(), CQdGetStage(), CQdIsDirty(), CQdMsgGetDirty(), CQdMsgSetDirty(), CQdReported(), CQdReset(), CQdSetStage(), and CQdSubtreeSetDirty().

Referenced by CQdCallWhenIdle().

static void CQdCallWhenIdle ( CQdMsg  msg  )  [static]

Definition at line 259 of file quiescence.c.

References CmiAbort(), CQdHandlePhase0(), CQdHandlePhase1(), CQdHandlePhase2(), and CQdMsgGetPhase().

Referenced by CQdHandler().

void CQdHandler ( CQdMsg  msg  ) 

Definition at line 272 of file quiescence.c.

References CcdCallOnCondition(), CQdCallWhenIdle(), and CQdProcess().

Referenced by CQdInit().

void CQdRegisterCallback ( CQdVoidFn  fn,
void *  arg 
)

Definition at line 280 of file quiescence.c.

References CcdCallOnCondition().

Referenced by CmiStartQD().

void CQdAnnounceHandler ( CQdMsg  msg  ) 

Definition at line 285 of file quiescence.c.

References CcdRaiseCondition(), and CQdProcess().

Referenced by CQdInit().

void CQdCpvInit ( void   ) 

Definition at line 291 of file quiescence.c.

References CQdStateCreate().

Referenced by CommunicationServerInit(), and CQdInit().

void CQdInit ( void   ) 

Definition at line 296 of file quiescence.c.

References _CQdAnnounceHandlerIdx, _CQdHandlerIdx, CmiRegisterHandler(), CQdAnnounceHandler(), CQdCpvInit(), and CQdHandler().

void CmiStartQD ( CQdVoidFn  fn,
void *  arg 
)

Definition at line 304 of file quiescence.c.

References _CQdHandlerIdx, CmiAlloc(), Converse::CmiSyncSendAndFree(), CQdCreate(), CQdMsgSetPhase(), and CQdRegisterCallback().

Referenced by BgShutdown().


Variable Documentation

unsigned int _CQdHandlerIdx

Definition at line 31 of file quiescence.c.

Referenced by CmiStartQD(), CQdInit(), and CQdPropagate().

unsigned int _CQdAnnounceHandlerIdx

Definition at line 32 of file quiescence.c.

Referenced by CQdHandlePhase2(), and CQdInit().


Generated on Sun Jun 29 13:29:33 2008 for Charm++ by  doxygen 1.5.1