some code docs for ckmulticast
authorRamprasad Venkataraman <ramv@illinois.edu>
Tue, 24 Aug 2010 16:40:45 +0000 (11:40 -0500)
committerRamprasad Venkataraman <ramv@illinois.edu>
Tue, 31 Aug 2010 19:30:35 +0000 (14:30 -0500)
src/libs/ck-libs/multicast/ckmulticast.C
src/libs/ck-libs/multicast/ckmulticast.h

index 5db7e962246bb2160139e02da72e8223b4f48935..e2350f18667559297345ffa0166533bfee2b6ec8 100644 (file)
@@ -318,7 +318,7 @@ void CkMulticastMgr::resetSection(CProxySection_ArrayElement &proxy)
 
 
 
-// prepare a mCastEntry entry and set up in CkSectionID
+/// Build a mCastEntry object with relevant section info and set the section cookie to point to this object
 void CkMulticastMgr::prepareCookie(mCastEntry *entry, CkSectionID &sid, const CkArrayIndexMax *al, int count, CkArrayID aid)
 {
   for (int i=0; i<count; i++) {
@@ -650,8 +650,6 @@ void CkMulticastMgr::rebuild(CkSectionInfo &sectId)
   resetCookie(sectId);
 }
 
-// mark old cookie spanning tree as old and 
-// build a new one
 void CkMulticastMgr::resetCookie(CkSectionInfo s)
 {
   mCastEntry *newCookie = (mCastEntry*)s.get_val();
index 4ec06db2ad981fa976d0a55a25faee4e98830f95..8c5d4a5b808c6a3acf43dd896e60e3142cfbff8b 100644 (file)
@@ -121,23 +121,27 @@ class CkMulticastMgr: public CkDelegateMgr
         void contribute(int dataSize,void *data,CkReduction::reducerType type, CkSectionInfo &sid, int userData=-1, int fragSize=-1);
         /// reduction trigger with a callback
         void contribute(int dataSize,void *data,CkReduction::reducerType type, CkSectionInfo &sid, CkCallback &cb, int userData=-1, int fragSize=-1);
+        /// @note: User should be careful while passing non-default value of fragSize. fragSize%sizeof(data_type) should be zero
 
 
         /// Recreate the section when root migrate
         void resetSection(CProxySection_ArrayElement &proxy);  // called by root
+        /// Implement the CkDelegateMgr interface to accept the delegation of a section proxy
         virtual void initDelegateMgr(CProxy *proxy);
-        /// override from base class. 
+        /// To implement the CkDelegateMgr interface for section mcasts
         void ArraySectionSend(CkDelegateData *pd,int ep,void *m, int nsid, CkSectionID *s, int opts);
+        /// Send individually to each section member. Used when tree is out-of-date and needs a rebuild
         void SimpleSend(int ep,void *m, CkArrayID a, CkSectionID &sid, int opts);
-        // user should be careful while passing non-default value of fragSize
-        // fragSize%sizeof(data_type) should be zero
+        /// Retire and rebuild the spanning tree when one of the intermediate vertices migrates
         void rebuild(CkSectionInfo &);
         // typedef CkMcastReductionMsg *(*reducerFn)(int nMsg,CkMcastReductionMsg **msgs);
 
     private:
+        /// Fill the SectionInfo cookie in the SectionID obj with relevant info
         void prepareCookie(mCastEntry *entry, CkSectionID &sid, const CkArrayIndexMax *al, int count, CkArrayID aid);
         /// Get info from the CkSectionInfo and call setup() to start the spanning tree build
         void initCookie(CkSectionInfo sid);
+        /// Mark old cookie spanning tree as old and build a new one
         void resetCookie(CkSectionInfo sid);
         enum {MAXREDUCERS=256};
         // static CkReduction::reducerFn reducerTable[MAXREDUCERS];