change
authorjihoonl <jihoonl>
Tue, 23 Feb 2010 22:51:58 +0000 (22:51 +0000)
committerjihoonl <jihoonl>
Tue, 23 Feb 2010 22:51:58 +0000 (22:51 +0000)
Robust/src/Benchmarks/Recovery/FileSystem/recovery/FileSystem.java
Robust/src/Benchmarks/Recovery/SpamFilter/recovery/SpamFilter.java
Robust/src/Benchmarks/Recovery/Spider/recovery/QueryTask.java
Robust/src/Benchmarks/Recovery/Spider/recovery/Spider.java
Robust/src/Benchmarks/Recovery/bm_args.txt
Robust/src/Benchmarks/Recovery/killclient.sh
Robust/src/Benchmarks/Recovery/runjava.sh

index d755b05414cad55e08f3f3b7d60b7dbf5b86706d..3c0778c639fc474b6831b38aebbdb4976c4b9caa 100644 (file)
@@ -103,7 +103,7 @@ public class FileSystem extends Thread {
                                isDir = false;\r
                \r
                        if (command == 'r') {\r
-                       System.out.println("["+command+"] ["+key+"]");\r
+//        System.out.println("["+command+"] ["+key+"]");\r
                                if (isDir == true) {\r
                                        atomic {\r
                                                readDirectory(gkey);\r
@@ -116,7 +116,7 @@ public class FileSystem extends Thread {
                          }\r
                        }\r
                        else if (command == 'c') {\r
-                               System.out.println("["+command+"] ["+key+"]");\r
+//                             System.out.println("["+command+"] ["+key+"]");\r
                        if (isDir == true) {\r
                                        atomic {\r
                                                createDirectory(gkey);\r
@@ -151,13 +151,13 @@ public class FileSystem extends Thread {
        public void output() { \r
                Iterator iter;\r
                GlobalString gstr;\r
-\r
+/*\r
                iter = dir_list.iterator();\r
 \r
                while (iter.hasNext()) {\r
                        gstr = (GlobalString)(iter.next());\r
                        System.printString(gstr.toLocalString() + "\n");\r
-               }\r
+               }*/\r
        }\r
 \r
        public void readFile(GlobalString gkey) {\r
@@ -172,7 +172,7 @@ public class FileSystem extends Thread {
 //                     System.out.println("<"+val+">");\r
                }\r
                else {\r
-                       System.out.println("No such file or directory");\r
+//                     System.out.println("No such file or directory");\r
                }\r
        }\r
 \r
@@ -192,7 +192,7 @@ public class FileSystem extends Thread {
 //                     System.out.println("");\r
                }\r
                else {\r
-                       System.out.println("No such file or directory");\r
+//                     System.out.println("No such file or directory");\r
                }\r
        }\r
 \r
@@ -241,11 +241,11 @@ public class FileSystem extends Thread {
                                dir_list.add(gkey);\r
                        }\r
                        else {\r
-                               System.out.println("Cannot create directory");\r
+//                             System.out.println("Cannot create directory");\r
                        }\r
                }\r
                else {\r
-                       System.out.println("Cannot create directory");\r
+//                     System.out.println("Cannot create directory");\r
                }\r
        }\r
        \r
@@ -269,9 +269,10 @@ public class FileSystem extends Thread {
                }\r
                \r
                int[] mid = new int[8];\r
+    /*\r
                mid[0] = (128<<24)|(195<<16)|(180<<8)|21;//dw-2\r
                mid[1] = (128<<24)|(195<<16)|(180<<8)|26;//dw-7\r
-/*\r
+*/\r
                mid[0] = (128<<24)|(195<<16)|(136<<8)|162;//dc-1\r
                mid[1] = (128<<24)|(195<<16)|(136<<8)|163;//dc-2\r
                mid[2] = (128<<24)|(195<<16)|(136<<8)|164;//dc-3\r
@@ -280,8 +281,8 @@ public class FileSystem extends Thread {
     mid[5] = (128<<24)|(195<<16)|(136<<8)|167;//dc-6\r
                mid[6] = (128<<24)|(195<<16)|(136<<8)|168;//dc-7\r
                mid[7] = (128<<24)|(195<<16)|(136<<8)|169;//dc-8\r
-       */\r
-               FileSystem[] lus;\r
+               \r
+    FileSystem[] lus;\r
                FileSystem initLus;\r
                \r
                atomic {\r
index 085f473f5b4c0b7a2a438363a4d61fb41f004b04..a04fa60e4348caccfe8efc773f60bca1f2178ac3 100644 (file)
@@ -123,9 +123,11 @@ public class SpamFilter extends Thread {
 
   public static void main(String[] args) {
     int[] mid = new int[8];
+
+    /*
     mid[0] = (128<<24)|(195<<16)|(180<<8)|21; //dw-2
     mid[1] = (128<<24)|(195<<16)|(180<<8)|26; //dw-7
-/*    
+    */
     mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc-1.calit2
     mid[1] = (128<<24)|(195<<16)|(136<<8)|163; //dc-2.calit2
     mid[2] = (128<<24)|(195<<16)|(136<<8)|164; //dc-3.calit2
@@ -134,7 +136,7 @@ public class SpamFilter extends Thread {
     mid[5] = (128<<24)|(195<<16)|(136<<8)|167; //dc-6.calit2
     mid[6] = (128<<24)|(195<<16)|(136<<8)|168; //dc-7.calit2
     mid[7] = (128<<24)|(195<<16)|(136<<8)|169; //dc-8.calit2
-*/
+
     //Read options from command prompt
     SpamFilter sf = new SpamFilter();
     SpamFilter.parseCmdLine(args, sf);
index 7b4c3f8f1af79c792cbbfbd4d30586cebad63c73..bff5d6d187b0449b14f52cf3f3fa08db38ef51c0 100644 (file)
@@ -140,10 +140,10 @@ public class QueryTask extends Task {
 
     System.out.println("Size = " + results_list.size());
 
-               while (iter.hasNext() == true) {
+/*             while (iter.hasNext() == true) {
                        str = ((GlobalString)(iter.next())).toLocalString();
                        System.printString(str + "\n");
-               }
+               }*/
        }
 
        public static String grabTitle(LocalQuery lq) {
index 77771683e2e124104f279eaa85ab74fcd4e68cd1..94aa7596f460ab02db4f0fa23e922fbebdf06c3b 100644 (file)
@@ -16,25 +16,26 @@ public class Spider {
     String fm = "www.uci.edu";
     String fp = "";
 
-    if(args.length != 4) {
-      System.out.println("./Spider.java master <num_thread> <first machine> <first page> <maxDepth>");
+    if(args.length != 3) {
+      System.out.println("./Spider.java master <num_thread> <first machine> <maxDepth>");
       System.exit(0);
     }
     else {
       NUM_THREADS = Integer.parseInt(args[0]);
       fm = args[1];
-      fp = args[2];
-      maxDepth = Integer.parseInt(args[3]);
+      maxDepth = Integer.parseInt(args[2]);
     }
 
                GlobalString firstmachine;
                GlobalString firstpage;
 
                int mid[] = new int[8];
+
+    /*
                mid[0] = (128<<24)|(195<<16)|(180<<8)|21;
                mid[1] = (128<<24)|(195<<16)|(180<<8)|26;
                mid[2] = (128<<24)|(195<<16)|(180<<8)|24;
-/*    
+  */
                mid[0] = (128<<24)|(195<<16)|(136<<8)|162;
                mid[1] = (128<<24)|(195<<16)|(136<<8)|163;
                mid[2] = (128<<24)|(195<<16)|(136<<8)|164;
@@ -43,14 +44,10 @@ public class Spider {
                mid[5] = (128<<24)|(195<<16)|(136<<8)|167;
                mid[6] = (128<<24)|(195<<16)|(136<<8)|168;
                mid[7] = (128<<24)|(195<<16)|(136<<8)|169;
-  */
+
                atomic {
                        firstmachine = global new GlobalString(fm);
-                       if (args.length == 3) {
-                               firstpage = global new GlobalString(fp);
-                       }
-                       else 
-                               firstpage = global new GlobalString("");;
+                       firstpage = global new GlobalString("");;
       
                        works = global new Work[NUM_THREADS];
                        qt = global new QueryTask[NUM_THREADS];
index 10959ef295c74b5f74886742974625f3b441dd2d..43e569e5295460ede25cf35ed45868ab0d9de99c 100644 (file)
@@ -1,4 +1 @@
-MatrixMultiply:2000 80
-FileSystem:data
-Spider:"www.uci.edu" "" 5
-SpamFilter:-e 600 -n 600
+testcase 8 Spider:www.uci.edu 4
index 79d3113e02f6d79c7b7792e3f0b05249d51a65e9..b2f57715fe752b7f14acfde40e28c04853122072 100755 (executable)
@@ -1,4 +1,5 @@
 # !/bin/sh
+# killClients <fileName> <# of machines>
 i=1;
 fileName=$1
 k=8;
index 4d59ef946851810cb9f894d0c2278072c4b4cf1e..934b0c84000157425d9c6473460bf3ad42af0a9c 100755 (executable)
@@ -8,8 +8,8 @@
 BASEDIR=`pwd`
 RECOVERYDIR='recovery'
 JAVASINGLEDIR='java'
-ITERATIONS=1
-WAITTIME=30
+WAITTIME=1500
+KILLDELAY=20
 
 # 0 mean new test 
 # 1~8 machine id to be killed
@@ -46,20 +46,19 @@ function runMachines {
   echo "Running machines"
   let "k= $NUM_MACHINE"
   
-  echo ${BASEDIR}/${BM_DIR} > ~/.tmpdir
   DIR=`echo ${BASEDIR}\/${BM_DIR}\/${RECOVERYDIR}`;
   echo "DIR = $DIR";
  
   # Run machines
   while [ $k -gt 1 ]; do
     echo "SSH into dc-${k}"
-    ssh dc-${k} 'cd '$DIR'; ./'$BM_NAME'.bin '>> $1'-'$k &
+    ssh dc-${k} 'cd '$DIR'; ./'$BM_NAME'.bin '>> $1'-'$k 2>&1 &
     k=`expr $k - 1`
     sleep 1
   done
   echo "Running master machine ... "
   echo "ssh dc-1 cd $DIR'; ./$BM_NAME.bin master $NUM_MACHINE $BM_ARGS";
-  ssh dc-1 'cd '$DIR'; ./'$BM_NAME'.bin master '$NUM_MACHINE $BM_ARGS >> $1'-1' &
+  ssh dc-1 'cd '$DIR'; ./'$BM_NAME'.bin master '$NUM_MACHINE $BM_ARGS >> $1'-1' 2>&1 &
 }
 
 ########### Normal execution
@@ -67,10 +66,10 @@ function runNormalTest {
 # Run java version
   j=1;
   BM_DIR=${BM_NAME}
-  fileName="$BM_NAME.bin";
+  fName="$BM_NAME.bin";
+  echo ${BM_DIR}
   cd ${BM_DIR}
 
-  echo $NUM_MACHINE
   tt=1;
   while [ $tt -le $NUM_MACHINE ]; do
     echo "------------------------------- Normal Test $1 ----------------------------" >> log-$tt
@@ -82,7 +81,7 @@ function runNormalTest {
   
   sleep $WAITTIME
 
-  killclients $fileName 8
+  killclients $fName 8
   sleep 10
   cd -
 }
@@ -92,82 +91,77 @@ function runFailureTest {
 # Run java version
   j=1;
   BM_DIR=${BM_NAME}
-  fileName="$BM_NAME.bin";
+  fName="$BM_NAME.bin";
   cd ${BM_DIR}
 
-  tt=1;
-  while [ $tt -le $NUM_MACHINE ]; do
-    tt=`expr $tt + 1`
-  done
-
-  test_iter=0;
+  test_iter=1;
 
   for k in ${ORDER[@]}
   do
     if [ $k -eq 0 ]; then         # if k = 0, it is a new test
       if [ $test_iter -ne 1 ]; then
         sleep $WAITTIME           # wait the end of execution
-        killclients $fileName 8   # kill alive machines
-      else
-        test_iter=`expr $test_iter + 1`
+        killclients $fName 8   # kill alive machines
+        outputIter=0;
+        for outputIter in 1 2 3 4 5 6 7 8
+        do
+          echo "----------------------------------------------------------------------------------" >> log-$outputIter
+        done
       fi
 
-      echo "------------------------------- Failure Test $test_iter ----------------------------" >> log-$tt
+      outputIter=0;
+      for outputIter in 1 2 3 4 5 6 7 8
+      do
+        echo "------------------------------- Failure Test $test_iter ----------------------------" >> log-$outputIter
+      done
+      echo "------------------------------- Failure Test $test_iter ----------------------------"
       runMachines log   
       sleep 10           # wait until all machine run
-
+      test_iter=`expr $test_iter + 1`
     else                 # if k != 0, time to kill machines!
       echo "------------------------ dc-$k is killed ------------------------" >> log-$k
-      killonemachine $fileName $k
+      echo "------------------------ dc-$k is killed ------------------------"
+      killonemachine $fName $k
       
-      let "killdelay= $RANDOM % 2 + 3"
-      sleep $killdelay
+      let "delay= $RANDOM % $KILLDELAY + 3"
+      sleep $delay
     fi 
   done
 
- sleep 10
+  killclients $fName 8   # kill alive machines
+  sleep 10
  cd -
 }
 
 
-echo "---------- Starting Benchmarks ----------"
-exec < bm_args.txt
-while read line
-do
+function testcase {
+  nummachines=$1
+  shift
+  line=$@
   BM_NAME=`echo $line | cut -f1 -d":"`
   BM_ARGS=`echo $line | cut -f2 -d":"`
 
+
   # Setup for remote machine
-  echo "" > ~/.bmargs
-  echo "BM_NAME='$BM_NAME'" > ~/.bmargs
-  echo "BM_ARGS='$BM_ARGS'" > ~/.bmargs
+  echo "BM_NAME='$BM_NAME'" 
+  echo "BM_ARGS='$BM_ARGS'" 
 
   fileName=${BM_NAME}.bin
 
   # terminate if it doesn't have parameter
-  let "NUM_MACHINE= $1 + 0";
-
-  if [ $NUM_MACHINE -eq 0 ]
-  then
-    echo "Wrong input"
-    echo "Usage : ./runjava.sh <num_machine> <number of machine to be killed>"
-    exit 0
-  fi
-
-  echo "BM_NAME= $BM_NAME"
-  echo "BM_ARGS= $BM_ARGS"
-  echo "NUM_M = $NUM_MACHINE"
+  let "NUM_MACHINE= $nummachines + 0";
 
   echo "====================================== Normal Test =============================="
   runNormalTest $NUM_MACHINES 1 
+  echo "================================================================================"
 
-  echo "================================================================================="
   echo "====================================== Failure Test ============================="
   runFailureTest $NUM_MACHINES
   echo "================================================================================="
-
-  killclients $fileName 8
+}
 
 
+echo "---------- Starting Benchmarks ----------"
+nmach=$1
+source bm_args.txt
 echo "----------- done ------------"
-