PPL Logo

mCastEntry Class Reference

Cookie for an array section. More...

Collaboration diagram for mCastEntry:

Collaboration graph
[legend]

Public Member Functions

 mCastEntry (CkArrayID _aid)
 mCastEntry (CkGroupID _gid)
 mCastEntry (mCastEntry *)
int hasParent ()
 Check if this tree is only a branch and has a parent.
int isObsolete ()
 Is this tree obsolete?
void setObsolete ()
 Make the current tree obsolete.
int notReady ()
 Check if this (branch of the) tree is ready for use.
void setReady ()
 Mark this (branch of the) tree as ready for use.
int isGrpSec ()
 Is this a group section.
int getNumLocalElems ()
void setLocalGrpElem ()
int getNumAllElems ()
void incReduceNo ()
 Increment the reduction number across the whole linked list of cookies.
CkArrayID getAid ()
 Get a handle on the array ID this tree is a member of.
int hasOldtree ()
void print ()

Data Fields

CkArrayID aid
 Array ID.
CkSectionInfo parentGrp
 Spanning tree parent.
sectionIdList children
 List of direct children.
int bfactor
 branching factor for spanning tree
int numChild
 Number of direct children.
arrayIndexList allElem
 List of all tree member array indices (Only useful on the tree root).
groupPeList allGrpElem
 List of all tree member PE's (Only useful on the tree root (for group sections)).
ObjKeyList allObjKeys
 Only useful on root for LB.
arrayIndexList localElem
 List of array elements on local PE.
bool localGrpElem
 List of group elements on local PE(either 0 or 1 elems).
int pe
 Should always be myPE.
CkSectionInfo rootSid
 Section ID of the root.
multicastGrpMsgBuf msgBuf
multicastGrpPacketBuf packetBuf
 Buffer storing the pending packets.
char * asm_msg
 For multicast packetization.
int asm_fill
mCastEntryoldc
 Linked list of entries on the same processor.
mCastEntrynewc
SectionLocation oldtree
 Old spanning tree.
reductionInfo red
char needRebuild

Private Attributes

char flag
char grpSec

Detailed Description

Cookie for an array section.

Definition at line 125 of file ckmulticast.C.


Constructor & Destructor Documentation

mCastEntry::mCastEntry ( CkArrayID  _aid  )  [inline]

Definition at line 170 of file ckmulticast.C.

mCastEntry::mCastEntry ( CkGroupID  _gid  )  [inline]

Definition at line 173 of file ckmulticast.C.

mCastEntry::mCastEntry ( mCastEntry old  ) 


Member Function Documentation

int mCastEntry::hasParent (  )  [inline]

Check if this tree is only a branch and has a parent.

Definition at line 178 of file ckmulticast.C.

References CkSectionInfo::get_val(), and parentGrp.

Referenced by CkMulticastMgr::childrenReady(), CkMulticastMgr::recvRedMsg(), and CkMulticastMgr::reduceFragment().

Here is the call graph for this function:

Here is the caller graph for this function:

int mCastEntry::isObsolete (  )  [inline]

Is this tree obsolete?

Definition at line 180 of file ckmulticast.C.

References flag.

Referenced by CkMulticastMgr::rebuild(), and CkMulticastMgr::recvRedMsg().

Here is the caller graph for this function:

void mCastEntry::setObsolete (  )  [inline]

Make the current tree obsolete.

Definition at line 182 of file ckmulticast.C.

References flag.

Referenced by CkMulticastMgr::rebuild(), CkMulticastMgr::retire(), and CkMulticastMgr::teardown().

Here is the caller graph for this function:

int mCastEntry::notReady (  )  [inline]

Check if this (branch of the) tree is ready for use.

Definition at line 184 of file ckmulticast.C.

References flag.

Referenced by CkMulticastMgr::recvMsg(), CkMulticastMgr::recvPacket(), and CkMulticastMgr::recvRedMsg().

Here is the caller graph for this function:

void mCastEntry::setReady (  )  [inline]

Mark this (branch of the) tree as ready for use.

Definition at line 186 of file ckmulticast.C.

References flag.

Referenced by CkMulticastMgr::childrenReady().

Here is the caller graph for this function:

int mCastEntry::isGrpSec (  )  [inline]

Is this a group section.

Definition at line 188 of file ckmulticast.C.

References grpSec.

Referenced by CkMulticastMgr::childrenReady(), getNumAllElems(), getNumLocalElems(), CkMulticastMgr::prepareGrpCookie(), CkMulticastMgr::sendToLocal(), CkMulticastMgr::sendToSection(), and CkMulticastMgr::setup().

Here is the caller graph for this function:

int mCastEntry::getNumLocalElems (  )  [inline]

Definition at line 189 of file ckmulticast.C.

References isGrpSec(), localElem, and localGrpElem.

Referenced by CkMulticastMgr::recvRedMsg().

Here is the call graph for this function:

Here is the caller graph for this function:

void mCastEntry::setLocalGrpElem (  )  [inline]

Definition at line 192 of file ckmulticast.C.

References localGrpElem.

Referenced by CkMulticastMgr::setup().

Here is the caller graph for this function:

int mCastEntry::getNumAllElems (  )  [inline]

Definition at line 193 of file ckmulticast.C.

References allElem, allGrpElem, and isGrpSec().

Referenced by CkMulticastMgr::recvRedMsg().

Here is the call graph for this function:

Here is the caller graph for this function:

void mCastEntry::incReduceNo (  )  [inline]

Increment the reduction number across the whole linked list of cookies.

Definition at line 197 of file ckmulticast.C.

References newc, red, and reductionInfo::redNo.

Referenced by CkMulticastMgr::recvRedMsg().

Here is the caller graph for this function:

CkArrayID mCastEntry::getAid (  )  [inline]

Get a handle on the array ID this tree is a member of.

Definition at line 203 of file ckmulticast.C.

References aid.

Referenced by CkMulticastMgr::childrenReady(), CkMulticastMgr::initCookie(), CkMulticastMgr::initGrpCookie(), CkMulticastMgr::recvMsg(), CkMulticastMgr::reduceFragment(), CkMulticastMgr::resetCookie(), CkMulticastMgr::resetSection(), and CkMulticastMgr::sendToLocal().

Here is the caller graph for this function:

int mCastEntry::hasOldtree (  )  [inline]

Definition at line 204 of file ckmulticast.C.

References SectionLocation::entry, and oldtree.

Referenced by CkMulticastMgr::reduceFragment().

Here is the caller graph for this function:

void mCastEntry::print (  )  [inline]

Definition at line 205 of file ckmulticast.C.

References asm_fill, asm_msg, Converse::CkMyPe(), CmiPrintf(), flag, numChild, and pe.

Here is the call graph for this function:


Field Documentation

Array ID.

Definition at line 129 of file ckmulticast.C.

Referenced by getAid(), mCastEntry(), and CkMulticastMgr::setup().

Number of direct children.

Definition at line 137 of file ckmulticast.C.

Referenced by print(), CkMulticastMgr::recvCookie(), and CkMulticastMgr::setup().

List of all tree member array indices (Only useful on the tree root).

Definition at line 139 of file ckmulticast.C.

Referenced by CkMulticastMgr::childrenReady(), getNumAllElems(), CkMulticastMgr::initCookie(), mCastEntry(), CkMulticastMgr::prepareCookie(), and CkMulticastMgr::setSection().

List of all tree member PE's (Only useful on the tree root (for group sections)).

Definition at line 141 of file ckmulticast.C.

Referenced by CkMulticastMgr::childrenReady(), getNumAllElems(), CkMulticastMgr::initGrpCookie(), mCastEntry(), and CkMulticastMgr::prepareGrpCookie().

Only useful on root for LB.

Definition at line 143 of file ckmulticast.C.

Referenced by mCastEntry(), CkMulticastMgr::prepareCookie(), CkMulticastMgr::sendToSection(), and CkMulticastMgr::setSection().

List of array elements on local PE.

Definition at line 145 of file ckmulticast.C.

Referenced by getNumLocalElems(), CkMulticastMgr::sendToLocal(), and CkMulticastMgr::setup().

List of group elements on local PE(either 0 or 1 elems).

Definition at line 147 of file ckmulticast.C.

Referenced by getNumLocalElems(), CkMulticastMgr::sendToLocal(), and setLocalGrpElem().

Should always be myPE.

Definition at line 149 of file ckmulticast.C.

Referenced by mCastEntry(), print(), CkMulticastMgr::rebuild(), and CkMulticastMgr::setup().

Definition at line 152 of file ckmulticast.C.

Referenced by CkMulticastMgr::childrenReady(), and CkMulticastMgr::recvMsg().

Buffer storing the pending packets.

Definition at line 154 of file ckmulticast.C.

Referenced by CkMulticastMgr::childrenReady(), and CkMulticastMgr::recvPacket().

For multicast packetization.

Definition at line 156 of file ckmulticast.C.

Referenced by mCastEntry(), print(), and CkMulticastMgr::recvPacket().

Definition at line 157 of file ckmulticast.C.

Referenced by mCastEntry(), print(), and CkMulticastMgr::recvPacket().

Linked list of entries on the same processor.

Definition at line 159 of file ckmulticast.C.

Referenced by CkMulticastMgr::freeup(), CkMulticastMgr::rebuild(), CkMulticastMgr::reduceFragment(), and CkMulticastMgr::resetCookie().

Old spanning tree.

Definition at line 161 of file ckmulticast.C.

Referenced by hasOldtree(), CkMulticastMgr::reduceFragment(), and CkMulticastMgr::resetSection().

char mCastEntry::flag [private]

Definition at line 167 of file ckmulticast.C.

Referenced by isObsolete(), notReady(), print(), setObsolete(), and setReady().

char mCastEntry::grpSec [private]

Definition at line 168 of file ckmulticast.C.

Referenced by isGrpSec().


The documentation for this class was generated from the following file:

Generated on Mon Sep 21 08:27:10 2020 for Charm++ by  doxygen 1.5.5