chare reuse msg also has payload
authorGengbin Zheng <gzheng@illinois.edu>
Wed, 24 May 2006 19:59:12 +0000 (19:59 +0000)
committerGengbin Zheng <gzheng@illinois.edu>
Wed, 24 May 2006 19:59:12 +0000 (19:59 +0000)
tests/charm++/pingpong/pingpong.C
tests/charm++/pingpong/pingpong.ci

index 1a554536f48409da23504704ea4899ebc9f33924..a0c96ac9e6b04890edf8dd3c195f1be1de47cea2 100644 (file)
@@ -314,7 +314,7 @@ class PingC : public Chare
   void start(void)
   {
     niter = 0;
-    pp->recv();
+    pp->recvReuse(new PingMsg);
     start_time = CkWallTimer();
   }
   void exchange(IdMsg *msg)
@@ -328,7 +328,7 @@ class PingC : public Chare
       pp->exchange(msg);
     }
   }
-  void recv(void)
+  void recvReuse(PingMsg *msg)
   {
     if(first) {
       niter++;
@@ -337,13 +337,14 @@ class PingC : public Chare
         CkPrintf("Roundtrip time for Chares (reuse msgs) is %lf us\n",
                  1.0e6*(end_time-start_time)/NITER);
         niter = 0;
+        delete msg;
         pp->recv(new PingMsg);
         start_time = CkWallTimer();
       } else {
-        pp->recv();
+        pp->recvReuse(msg);
       }
     } else {
-      pp->recv();
+      pp->recvReuse(msg);
     }
   }
   void recv(PingMsg *msg)
index 335b3a4d6bf05397f1422c883a6b7103d0136a8e..94080851e87e723eb2c859af6822d0a04f24ad1f 100644 (file)
@@ -26,7 +26,7 @@ mainmodule pingpong {
     entry PingC(IdMsg *);
     entry void start(void);
     entry void exchange(IdMsg *);
-    entry void recv(void);
+    entry void recvReuse(PingMsg *);
     entry void recv(PingMsg *);
     entry [threaded] void trecv(void);
   };