Merge branch 'charm' into virtualDebug
authorFilippo Gioachin <gioachin@uiuc.edu>
Wed, 21 Apr 2010 22:50:19 +0000 (17:50 -0500)
committerFilippo Gioachin <gioachin@uiuc.edu>
Wed, 21 Apr 2010 22:50:19 +0000 (17:50 -0500)
Conflicts:
src/ck-core/ck.C
src/langs/bluegene/blue.C

1  2 
src/arch/net/charmrun/charmrun.c
src/ck-core/debug-charm.C
src/ck-core/init.C
src/ck-core/middle-blue.h
src/langs/bluegene/blue.C
src/langs/bluegene/blue_impl.h
src/scripts/Make.depends
src/scripts/Makefile

Simple merge
Simple merge
Simple merge
Simple merge
index c81f77c5cc5693c3c77aa7ae81cd72c76f8c2b07,a91e56ddf102462476959982a4cd2796b5518be0..3679dcba4a2e74efef40ea3db399d5a0eda72290
@@@ -2092,30 -2121,10 +2126,38 @@@ int BgIsReplay(
      return cva(bgMach).replay != -1;
  }
  
 +extern "C" void CkReduce(void *msg, int size, CmiReduceMergeFn mergeFn) {
 +  ((workThreadInfo*)cta(threadinfo))->reduceMsg = msg;
 +  //CmiPrintf("Called CkReduce from %d %hd\n",CmiMyPe(),cta(threadinfo)->globalId);
 +  int numLocal = 0, count = 0;
 +  for (int j=0; j<cva(numNodes); j++){
 +    for(int i=0;i<cva(bgMach).numWth;i++){
 +      workThreadInfo *t = (workThreadInfo*)cva(nodeinfo)[j].threadinfo[i];
 +      if (t->reduceMsg == NULL) return; /* we are not yet ready to reduce */
 +      numLocal ++;
 +    }
 +  }
 +  void **msgLocal = (void**)malloc(sizeof(void*)*(numLocal-1));
 +  for (int j=0; j<cva(numNodes); j++){
 +    for(int i=0;i<cva(bgMach).numWth;i++){
 +      workThreadInfo *t = (workThreadInfo*)cva(nodeinfo)[j].threadinfo[i];
 +      if (t == cta(threadinfo)) break;
 +      msgLocal[count++] = t->reduceMsg;
 +      t->reduceMsg = NULL;
 +    }
 +  }
 +  CmiAssert(count==numLocal-1);
 +  msg = mergeFn(&size, msg, msgLocal, numLocal-1);
 +  CmiReduce(msg, size, mergeFn);
 +  CmiPrintf("Called CmiReduce %d\n",CmiMyPe());
 +  for (int i=0; i<numLocal-1; ++i) CmiFree(msgLocal[i]);
 +  free(msgLocal);
 +}
++
+ // for record/replay, to fseek back
+ void BgRewindRecord()
+ {
+   threadInfo *tinfo = cta(threadinfo);
+   if (tinfo->watcher) tinfo->watcher->rewind();
+ }
Simple merge
index bb7831dad2f7949f4cf2b0ea75fe9031640a337c,24ed07daf7c434c6aecff1443a2ff6ca67b180b1..048e6547bedf227e13882f0e45c05d62f95dd886
@@@ -81,21 -81,18 +81,21 @@@ edgelist.o: edgelist.c typedefs.h conve
        $(CHARMC) -c -I. edgelist.c
  
  conv-ccs.o: conv-ccs.c converse.h conv-config.h conv-autoconfig.h \
-  conv-common.h conv-mach.h conv-mach-opt.h pup_c.h queueing.h conv-cpm.h \
-  conv-cpath.h conv-qd.h conv-random.h conv-lists.h conv-trace.h \
-  persistent.h debug-conv.h conv-ccs.h sockRoutines.h ccs-server.h \
-  ckhashtable.h pup.h ccs-server.c ccs-auth.h ccs-auth.c
+   conv-common.h conv-mach.h conv-mach-opt.h pup_c.h queueing.h conv-cpm.h \
+   conv-cpath.h conv-qd.h conv-random.h conv-lists.h conv-trace.h \
+   persistent.h debug-conv.h conv-ccs.h sockRoutines.h ccs-server.h \
+   ckhashtable.h pup.h
        $(CHARMC) -c -I. conv-ccs.c
  
 +middle-ccs.o: middle-ccs.C converse.h bgconverse.h
 +      $(CHARMC) -c -I. middle-ccs.C
 +
  ccs-builtins.o: ccs-builtins.C converse.h conv-config.h conv-autoconfig.h \
-  conv-common.h conv-mach.h conv-mach-opt.h pup_c.h queueing.h conv-cpm.h \
-  conv-cpath.h conv-qd.h conv-random.h conv-lists.h conv-trace.h \
-  persistent.h debug-conv.h ckhashtable.h pup.h pup_toNetwork.h \
-  debug-charm.h cklists.h conv-ccs.h sockRoutines.h ccs-server.h \
-  ccs-builtins.h
+   conv-common.h conv-mach.h conv-mach-opt.h pup_c.h queueing.h conv-cpm.h \
+   conv-cpath.h conv-qd.h conv-random.h conv-lists.h conv-trace.h \
+   persistent.h debug-conv.h ckhashtable.h pup.h pup_toNetwork.h \
+   debug-charm.h cklists.h conv-ccs.h sockRoutines.h ccs-server.h \
+   ccs-builtins.h
        $(CHARMC) -c -I. ccs-builtins.C
  
  traceCore.o: traceCore.C converse.h conv-config.h conv-autoconfig.h \
Simple merge