*** empty log message ***
authorTerry L. Wilmarth <wilmarth@uiuc.edu>
Thu, 10 Feb 2005 03:35:43 +0000 (03:35 +0000)
committerTerry L. Wilmarth <wilmarth@uiuc.edu>
Thu, 10 Feb 2005 03:35:43 +0000 (03:35 +0000)
examples/pose/Ring/Worker.C
examples/pose/Ring/pgm.C

index 77e4709f3a2987dc870b01bb74526cc622541dbc..0c85ab7329fa0e6e74cd2292f54f8aaecae8a963 100644 (file)
@@ -24,15 +24,17 @@ worker::worker(WorkerData *m)
   totalObjs = numObjs * CkNumPes();
   localDensity = ((double)density)/((double)totalObjs);
   delete m;
+  CkPrintf("Worker %d created on PE %d.\n", myHandle, CkMyPe());
+
   SmallWorkMsg *sm = new SmallWorkMsg;
   memset(sm->data, 0, SM_MSG_SZ*sizeof(int));
   sm->fromPE = -1;
-  //CkPrintf("Worker %d created on PE %d.\n", myHandle, CkMyPe());
+  CkPrintf("Worker %d created on PE %d.\n", myHandle, CkMyPe());
   //if (myHandle%numObjs == 0) { //local ring; multiple global rings
   //if (myHandle%(numObjs/2) == 0) { //multiple offset global rings
   //if (myHandle == 0) { 
-    //CkPrintf("Worker %d starting ring, sending to self.\n", myHandle, CkMyPe());
-    POSE_invoke(workSmall(sm), worker, parent->thisIndex, 0);
+  CkPrintf("Worker %d starting ring, sending to self.\n", myHandle);
+  POSE_invoke(workSmall(sm), worker, parent->thisIndex, 0);
   //}
 }
 
@@ -64,7 +66,7 @@ void worker::terminus()
 
 void worker::workSmall(SmallWorkMsg *m)
 {
-  //CkPrintf("%d receiving small work at %d\n", parent->thisIndex, ovt);
+  CkPrintf("%d receiving small work at %d from obj %d\n", parent->thisIndex, ovt, m->fromPE);
   doWork();
 }
 
@@ -125,9 +127,9 @@ void worker::doWork()
     memset(sm->data, 0, SM_MSG_SZ*sizeof(int));
     sm->fromPE = myHandle;
     // local ring
-    //POSE_invoke(workSmall(sm), worker, ((myHandle%numObjs)+1)%numObjs + (numObjs*CkMyPe()), 0);
-    POSE_invoke(workSmall(sm), worker, (myHandle+1)%totalObjs, 0);
-    //CkPrintf("%d sending small work to %d at %d. Sent=%d\n",myHandle,((myHandle%numObjs)+1)%numObjs + (numObjs*CkMyPe()),ovt,sent);
+    POSE_invoke(workSmall(sm), worker, ((myHandle%numObjs)+1)%numObjs + (numObjs*CkMyPe()), 0);
+    //POSE_invoke(workSmall(sm), worker, (myHandle+1)%totalObjs, 0);
+    CkPrintf("%d sending small work to %d at %d. Sent=%d\n",myHandle,((myHandle%numObjs)+1)%numObjs + (numObjs*CkMyPe()),ovt,sent);
   }
   else if (actualMsgSize == MEDIUM) {
     mm = new MediumWorkMsg;
@@ -143,9 +145,6 @@ void worker::doWork()
   }
   int elapseCheck = sent * (1.0/localDensity);
   if (OVT() < elapseCheck) elapse(elapseCheck-OVT());
-  /*
-  if (sent == numMsgs)
-    CkPrintf("%d done! sent %d & received %d messages!\n", myHandle, sent, received);
-  */
+  CkPrintf("%d sent %d messages out of %d!\n", myHandle, sent, numMsgs);
 }
 
index fa52102213f40515a4b6aa4c5b0071fd4b5a62c3..fa687db202577b1d211daee2b08424b6e8add588 100644 (file)
@@ -56,6 +56,26 @@ main::main(CkArgMsg *m)
 
   POSE_init();
 
+  /*
+  WorkerData *wd;
+  wd = new WorkerData;
+  wd->numObjs = numObjs;
+  wd->numMsgs = numMsgs;
+  wd->msgSize = msgSize;
+  wd->grainSize = grainSize;
+  wd->granularity = granularity;
+  wd->density = density;
+  wd->Timestamp(0);
+  //Create the map group
+  CProxy_BlockMap myMap=CProxy_BlockMap::ckNew();
+  //Make a new array using that map
+  CkArrayOptions opts(totalObjs);
+  opts.setMap(myMap);
+  (*(CProxy_worker *) &POSE_Objects) = CProxy_worker::ckNew(wd, opts);
+  //(*(CProxy_worker *) &POSE_Objects) = CProxy_worker::ckNew(wd, totalObjs);
+  */
+
+
   // create all the workers
   WorkerData *wd;
   int dest, j;
@@ -75,6 +95,13 @@ main::main(CkArgMsg *m)
     //wd->dump();
     (*(CProxy_worker *) &POSE_Objects)[i].insert(wd, dest);
   }
+  /*
+  SmallWorkMsg *sm = new SmallWorkMsg;
+  memset(sm->data, 0, SM_MSG_SZ*sizeof(int));
+  sm->fromPE = -1;
+  sm->Timestamp(0);
+  (*(CProxy_worker *) &POSE_Objects).workSmall(sm);
+  */
 }
 
 void main::buildMap(int numObjs, int dist)