a minimal working pup for control point manager to allow exit function to work (when...
authorGengbin Zheng <gzheng@illinois.edu>
Fri, 23 Jul 2010 15:38:01 +0000 (10:38 -0500)
committerGengbin Zheng <gzheng@illinois.edu>
Fri, 23 Jul 2010 15:38:01 +0000 (10:38 -0500)
src/ck-cp/controlPoints.C
src/ck-cp/controlPoints.h

index 84a841065176c429fcfe6bb6c5f47da0f985d4de..c373469e168e7d2d9be9bb03c13bf56d219f6fc3 100644 (file)
@@ -266,6 +266,21 @@ controlPointManager::controlPointManager() {
 //    CkPrintf("[%d] controlPointManager() Destructor\n", CkMyPe());
   }
 
+  void controlPointManager::pup(PUP::er &p)
+  {
+    CBase_controlPointManager::pup(p);
+      // FIXME: does not work when control point is actually used,
+      // just minimal pup so that it allows exit function to work (exitIfReady).
+    p|generatedPlanForStep;
+    p|exitWhenReady;
+    p|alreadyRequestedMemoryUsage;
+    p|alreadyRequestedIdleTime;
+    p|alreadyRequestedAll;
+    p|frameworkShouldAdvancePhase;
+    p|haveControlPointChangeCallback;
+    p|phase_id;
+  }
+  
 
   /// Loads the previous run data file
   void controlPointManager::loadDataFile(){
index 526c5aeef7400cb8c4677bd4669f9a45868f7bdb..288e375220c120ca07487584459c6bc8f032043a 100644 (file)
@@ -736,18 +736,10 @@ public:
      
   ~controlPointManager();
 
-
-
-  void pup(PUP::er &p)
-  {
-    CBase_controlPointManager::pup(p);
-    if(p.isUnpacking()){
-      CkPrintf("Group controlPointManager is not yet capable of migration.\n");
-    }
-  }
+  void pup(PUP::er &p);
   
  controlPointManager(CkMigrateMessage* m) : CBase_controlPointManager(m) {
-    CkPrintf("Warning: control point framework likely won't work after checkpoint restart, please fix this problem if you need the functionality.");
+    // CkPrintf("Warning: control point framework likely won't work after checkpoint restart, please fix this problem if you need the functionality.");
   }