Fixing more bugs in the bracketed strategies including: 1) destination and source...
[charm.git] / src / ck-com / ComlibStrategy.C
index a13ccf51cfdadbdb8b3a6c80cd30cf8bf7d516a6..3bc767ae5f02b1be1320f7e18311de50ad032931 100644 (file)
@@ -381,139 +381,7 @@ int *ComlibArrayInfo::getCombinedCountList() {
   return result;
 }
 
   return result;
 }
 
-/*
-//Get the list of destination processors
-void ComlibArrayInfo::getDestinationPeList(int *&destpelist, int &ndestpes) {
-    
-    int count = 0, acount =0;
-    
-    //Destination has not been set
-    if(nDestIndices < 0) {
-        destpelist = 0;
-        ndestpes = 0;
-        return;
-    }
-
-    //Create an array of size CkNumPes()
-    //Inefficient in space
-    ndestpes = CkNumPes();
-    destpelist = new int[ndestpes];
-
-    memset(destpelist, 0, ndestpes * sizeof(int));    
-
-    if(nDestIndices == 0){
-        for(count =0; count < CkNumPes(); count ++) 
-            destpelist[count] = count;             
-        return;
-    }
-
-    ndestpes = 0;
-    CkArray *amgr = CkArrayID::CkLocalBranch(dest_aid);
-
-    //Find the last known processors of the array elements
-    for(acount = 0; acount < nDestIndices; acount++) {
-
-      //int p = ComlibGetLastKnown(dest_aid, dest_elements[acount]); 
-        int p = amgr->lastKnown(dest_elements[acount]);
-        
-        for(count = 0; count < ndestpes; count ++)
-            if(destpelist[count] == p)
-                break;
-        
-        if(count == ndestpes) {
-            destpelist[ndestpes ++] = p; 
-        }       
-    }                            
-}
-
-void ComlibArrayInfo::getSourcePeList(int *&srcpelist, int &nsrcpes) {
-    
-    int count = 0, acount =0;
-
-    if(nSrcIndices < 0) {
-        srcpelist = 0;
-        nsrcpes = 0;
-        return;
-    }
-
-    nsrcpes = CkNumPes();
-    srcpelist = new int[nsrcpes];
-
-    memset(srcpelist, 0, nsrcpes * sizeof(int));    
 
 
-    if(nSrcIndices == 0){
-        for(count =0; count < CkNumPes(); count ++) 
-            srcpelist[count] = count;             
-        return;
-    }
-
-    nsrcpes = 0;
-    CkArray *amgr = CkArrayID::CkLocalBranch(src_aid);
-
-    for(acount = 0; acount < nSrcIndices; acount++) {
-        
-      //int p = ComlibGetLastKnown(src_aid, src_elements[acount]); 
-        int p = amgr->lastKnown(src_elements[acount]);
-        
-        for(count = 0; count < nsrcpes; count ++)
-            if(srcpelist[count] == p)
-                break;
-        
-        if(count == nsrcpes) {
-            srcpelist[nsrcpes ++] = p; 
-        }       
-    }                            
-}
-
-void ComlibArrayInfo::getCombinedPeList(int *&pelist, int &npes) {
-
-    int count = 0;        
-    pelist = 0;
-    npes = 0;
-    
-    //Both arrays empty;
-    //Sanity check, this should really not happen
-    if(nSrcIndices < 0 && nDestIndices < 0) {
-        CkAbort("Arrays have not been set\n");
-        return;
-    }
-    
-    //One of them is the entire array Hence set the number of
-    //processors to all Currently does not work for the case where
-    //number of array elements less than number of processors
-    //Will fix it later!
-    if(nSrcIndices == 0 || nDestIndices == 0) {
-        npes = CkNumPes();        
-        pelist = new int[npes];
-        for(count = 0; count < CkNumPes(); count ++) 
-            pelist[count] = count;                         
-    }
-    else {
-        getDestinationPeList(pelist, npes);
-        
-        //Destination has not been set
-        //Strategy does not care about destination
-        //Is an error case
-        if(npes == 0)
-            pelist = new int[CkNumPes()];
-        
-       CkArray *amgr = CkArrayID::CkLocalBranch(src_aid);
-
-        //Add source processors to the destination processors
-        //already obtained
-        for(int acount = 0; acount < nSrcIndices; acount++) {
-         //int p = ComlibGetLastKnown(src_aid, src_elements[acount]);
-           int p = amgr->lastKnown(src_elements[acount]);
-
-            for(count = 0; count < npes; count ++)
-                if(pelist[count] == p)
-                    break;
-            if(count == npes)
-                pelist[npes ++] = p;
-        }                        
-    }
-}
-*/
 
 /**  Broadcast the message to all local elements (as listed in dest_elements) */
 void ComlibArrayInfo::localBroadcast(envelope *env) {
 
 /**  Broadcast the message to all local elements (as listed in dest_elements) */
 void ComlibArrayInfo::localBroadcast(envelope *env) {