Got net-irix to work. Had to modify jsleep to deal with restaring
authorMilind Bhandarkar <milind@cs.uiuc.edu>
Wed, 19 Mar 1997 23:17:38 +0000 (23:17 +0000)
committerMilind Bhandarkar <milind@cs.uiuc.edu>
Wed, 19 Mar 1997 23:17:38 +0000 (23:17 +0000)
system calls on interrupts.

src/arch/net-hp-cc/conv-mach.csh
src/arch/net-irix/conv-mach.h
src/arch/net/conv-host.c
src/arch/net/machine.c
src/ck-perf/perf-sum.c
src/conv-core/convcore.c

index 651765087d68ad2f0bf2404105661890a7ebe0d8..f5e1d4560f42d583de5bf6fc0e441829e9a6693e 100644 (file)
 # REVISION HISTORY:
 #
 # $Log$
-# Revision 1.5  1997-03-17 23:40:28  milind
+# Revision 1.6  1997-03-19 23:17:46  milind
+# Got net-irix to work. Had to modify jsleep to deal with restaring
+# system calls on interrupts.
+#
+# Revision 1.5  1997/03/17 23:40:28  milind
 # Added Idle Notification Functionality:
 # The new Macros in converse.h for this are:
 # CsdSetNotifyIdle(fn1, fn2)
@@ -46,9 +50,9 @@ set CMK_CXX='CC -D_HPUX_SOURCE '
 set CMK_CXXPP='CC -Aa -D_HPUX_SOURCE -E '
 set CMK_CF77=''
 set CMK_C_DEBUG='-g'
-set CMK_C_OPTIMIZE='-O'
+set CMK_C_OPTIMIZE='+O3 +Onolimit '
 set CMK_CXX_DEBUG='-g'
-set CMK_CXX_OPTIMIZE='-O'
+set CMK_CXX_OPTIMIZE='+O3 +Onolimit '
 set CMK_LD='cc -Aa -D_HPUX_SOURCE '
 set CMK_LDXX='CC '
 set CMK_LD77=''
index d3c2c69a023bb5cffc1912d3617ebb62d3bee52d..8871a887e556dfb3c4bc9c3f18c1de5dca15242a 100644 (file)
@@ -8,7 +8,11 @@
  ***************************************************************************
  *
  * $Log$
- * Revision 1.5  1997-03-19 17:45:59  milind
+ * Revision 1.6  1997-03-19 23:17:47  milind
+ * Got net-irix to work. Had to modify jsleep to deal with restaring
+ * system calls on interrupts.
+ *
+ * Revision 1.5  1997/03/19 17:45:59  milind
  * Switched to the SGI native compilers for better performance.
  *
  * Revision 1.3  1997/02/13 09:31:45  jyelon
@@ -81,8 +85,8 @@
 
 #define CMK_MACHINE_NAME                                   "net-irix"
 
-#define CMK_MALLOC_USE_GNU_MALLOC                          0
-#define CMK_MALLOC_USE_OS_BUILTIN                          1
+#define CMK_MALLOC_USE_GNU_MALLOC                          1
+#define CMK_MALLOC_USE_OS_BUILTIN                          0
 
 #define CMK_MSG_HEADER_SIZE_BYTES                         16
 #define CMK_MSG_HEADER_BLANK_SPACE                        12
index 91d58d531cc8eab76c5e494d9c01dca838c2445c..a111453b360f6aa1114c5a3b8f5a329f90bab4bf 100644 (file)
@@ -58,12 +58,17 @@ extern char *sys_errlist[];
 
 static void jsleep(int sec, int usec)
 {
+  int ntimes,i;
   struct timeval tm;
-  tm.tv_sec = sec;
-  tm.tv_usec = usec;
-  while (1) {
-    if (select(0,0,0,0,&tm)==0) break;
-    if (errno!=EINTR) break;
+
+  ntimes = (sec*1000000+usec)/5000;
+  for(i=0;i<ntimes;i++) {
+    tm.tv_sec = 0;
+    tm.tv_usec = 5000;
+    while(1) {
+      if (select(0,NULL,NULL,NULL,&tm)==0) break;
+      if (errno!=EINTR) return;
+    }
   }
 }
 
index 15e1e938924a70e81cb6a494327d73f5cfcea6c5..e347ef116a948207b0bc0938288b75e1ad813f27 100644 (file)
@@ -361,13 +361,31 @@ static int CountArgs(char **argv)
 }
 
 
+static void jsleep(int sec, int usec)
+{
+  int ntimes,i;
+  struct timeval tm;
+
+  ntimes = (sec*1000000+usec)/5000;
+  for(i=0;i<ntimes;i++) {
+    tm.tv_sec = 0;
+    tm.tv_usec = 5000;
+    while(1) {
+      if (select(0,NULL,NULL,NULL,&tm)==0) break;
+      if (errno!=EINTR) return;
+    }
+  }
+}
+
+/* old jsleep - buggy
 static void jsleep(int sec, int usec)
 {
   struct timeval tm;
   tm.tv_sec = sec;
   tm.tv_usec = usec;
-  select(0,0,0,0,&tm);
+  select(0,NULL,NULL,NULL,&tm);
 }
+*/
 
 static void writeall(int fd, char *buf, int size)
 {
@@ -1010,7 +1028,6 @@ static OtherNode  nodes;        /* Indexed only by ``node number'' */
 static int        Cmi_shutdown_done;
 static CmiMutex   Cmi_scanf_mutex;
 static char      *Cmi_scanf_data;
-static int        Cmi_shutdown_done; 
 static double     Cmi_clock;
 
 static void *transmit_queue;
index 7b0a59280f03d6e1cd36f6489c214be09ade0134..10384a2cedf6b3291bd6c14e429a6384025fad6a 100644 (file)
  ***************************************************************************
  * REVISION HISTORY:
  *      $Log$
- *      Revision 2.10  1995-10-30 22:29:57  sanjeev
+ *      Revision 2.11  1997-03-19 23:17:38  milind
+ *      Got net-irix to work. Had to modify jsleep to deal with restaring
+ *      system calls on interrupts.
+ *
+ *      Revision 2.10  1995/10/30 22:29:57  sanjeev
  *      converted static variable in CollectPerfFromNodes to Cpv
  *
  * Revision 2.9  1995/10/30  14:31:12  jyelon
@@ -55,7 +59,7 @@ static char ident[] = "@(#)$Header$";
 #include "stat.h"
 
 CpvDeclare(char*,pgm);
-CpvDeclare(int,RecdPerfMsg); 
+CpvExtern(int,RecdPerfMsg); 
 
 CpvDeclare(int,display_index);
 CpvDeclare(int,last_time_interval);
@@ -78,7 +82,6 @@ char *prog_name;
   char nodename[80];
 
   CpvInitialize(char*,pgm);
-  CpvInitialize(int,RecdPerfMsg);
   CpvInitialize(int,display_index);
   CpvInitialize(int,last_time_interval);
   CpvInitialize(int,current_time_interval);
index 17390339f82481172bb39e36308edd8019481764..7477564dc732a909cc15c1c580e6a2f68711e23a 100644 (file)
@@ -729,7 +729,7 @@ int maxmsgs;
 #if CMK_WHEN_PROCESSOR_IDLE_USLEEP
       {
         struct timeval tv;
-        tv.tv_usec=10000; tv.tv_sec=0;
+        tv.tv_usec=5000; tv.tv_sec=0;
         select(0,0,0,0,&tv);
       }
 #endif