Added global runtime variables indicating the state of out-of-core emulation in...
authorChao Mei <chaomei2@illinois.edu>
Tue, 30 Dec 2008 16:46:15 +0000 (16:46 +0000)
committerChao Mei <chaomei2@illinois.edu>
Tue, 30 Dec 2008 16:46:15 +0000 (16:46 +0000)
src/conv-core/convcore.c
src/conv-core/converse.h

index a5f0b1d3e570d8c11d263915de9b4b8bc9657691..39d9089f5d053d570ad4f0a7265349d58b278a49 100644 (file)
@@ -1609,6 +1609,10 @@ CthThread CthSuspendSchedulingThread()
 void CthResumeNormalThread(CthThreadToken* token)
 {
   CthThread t = token->thread;
+
+  //BIGSIM_OOC DEBUGGING
+  //CmiPrintf("Resume normal thread with token[%p] ==> thread[%p]\n", token, t);
+
   if(t == NULL){
     free(token);
     return;
@@ -1622,6 +1626,9 @@ void CthResumeNormalThread(CthThreadToken* token)
 #endif
 #endif
 
+  //BIGSIM_OOC DEBUGGING
+  //CmiPrintf("In CthResumeNormalThread:   ");
+  //CthPrintThdMagic(t);
   CthResume(t);
 }
 
@@ -3073,6 +3080,10 @@ unsigned char computeCheckSum(unsigned char *data, int len)
   return ret;
 }
 
+/* Flag for bigsim's out-of-core emulation */
+int BgOutOfCoreFlag=0; //indicate the type of memory operation (in or out)
+int BgInOutOfCoreMode=0; //indicate whether the emulation is in the out-of-core emulation mode
+
 #if !CMK_HAS_LOG2
 unsigned int CmiLog2(unsigned int val) {
   unsigned int log = 0u;
index 749d6a2f2f7cb62bed0320f10a40c207734b6bd2..0b78af18ff48271b95049424af01f1bdfe9e1491 100644 (file)
@@ -1127,6 +1127,10 @@ void       CthFree(CthThread);
 void       CthSetSuspendable(CthThread, int);
 int        CthIsSuspendable(CthThread);
 
+/* added for bigsim out-of-core emulation */
+void      CthPrintThdMagic(CthThread); 
+void      CthPrintThdStack(CthThread);
+
 void       CthSuspend(void);
 void       CthAwaken(CthThread);
 void       CthAwakenPrio(CthThread, int, int, unsigned int *);
@@ -1322,6 +1326,7 @@ CmmTable CmmPup(pup_er p, CmmTable t, CmmPupMessageFn msgpup);
 
 CmmTable   CmmNew();
 void       CmmFree(CmmTable t);
+void      CmmFreeAll(CmmTable t);
 void       CmmPut(CmmTable t, int ntags, int *tags, void *msg);
 void      *CmmFind(CmmTable t, int ntags, int *tags, int *returntags, int del);
 int        CmmEntries(CmmTable t);
@@ -1660,6 +1665,10 @@ extern int CmiGridQueueLookupMsg (char *msg);
 
 #include "debug-conv.h"
 
+/* The flag tells whether we are in the process of doing out-of-core emulation in BigSim */
+extern int BgOutOfCoreFlag;
+extern int BgInOutOfCoreMode;
+
 #if CMK_HAS_LOG2
 #define CmiLog2  log2
 #else