changes
authoradash <adash>
Wed, 18 May 2011 23:41:20 +0000 (23:41 +0000)
committeradash <adash>
Wed, 18 May 2011 23:41:20 +0000 (23:41 +0000)
Robust/src/Benchmarks/Recovery/FileSystem/recovery/FileSystem.java
Robust/src/Benchmarks/Recovery/Game/recovery/Barrier.java
Robust/src/Benchmarks/Recovery/Game/recovery/RainForest.java
Robust/src/Benchmarks/Recovery/MatrixMultiply/recovery/MatrixMultiply.java
Robust/src/Benchmarks/Recovery/SpamFilter/recovery/SpamFilter.java
Robust/src/Benchmarks/Recovery/Spider/recovery/QueryTask.java
Robust/src/Benchmarks/Recovery/Spider/recovery/README [new file with mode: 0644]
Robust/src/Benchmarks/Recovery/Spider/recovery/Spider.java
Robust/src/Benchmarks/Recovery/bm_args.txt
Robust/src/Benchmarks/Recovery/bm_args_16threads.txt [new file with mode: 0644]
Robust/src/Benchmarks/Recovery/runjava.sh

index c17140e8e0500275930afc3740904566d2ff564a..450796f83fd789c4989b6e5f9bfd0de19db4f575 100644 (file)
@@ -79,15 +79,42 @@ public class FileSystem extends Thread {
       System.exit(0);\r
     }\r
 \r
-    int[] mid = new int[8];\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
-    mid[3] = (128<<24)|(195<<16)|(136<<8)|165;//dc-4\r
-    mid[4] = (128<<24)|(195<<16)|(136<<8)|166;//dc-5\r
-    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
+    int[] mid = null;\r
+\r
+    if(NUM_THREADS <= 8 ) {\r
+      mid = new int[8];\r
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1\r
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|163; //dc2\r
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|164; //dc3\r
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|165; //dc4\r
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|166; //dc5\r
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|167; //dc6\r
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|168; //dc7\r
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|169; //dc8\r
+    } else {\r
+      mid = new int[16];\r
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1\r
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|162; //dc1\r
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|163; //dc2\r
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|163; //dc2\r
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|164; //dc3\r
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|164; //dc3\r
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|165; //dc4\r
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|165; //dc4\r
+      mid[8] = (128<<24)|(195<<16)|(136<<8)|166; //dc5\r
+      mid[9] = (128<<24)|(195<<16)|(136<<8)|166; //dc5\r
+      mid[10] = (128<<24)|(195<<16)|(136<<8)|167; //dc6\r
+      mid[11] = (128<<24)|(195<<16)|(136<<8)|167; //dc6\r
+      mid[12] = (128<<24)|(195<<16)|(136<<8)|168; //dc7\r
+      mid[13] = (128<<24)|(195<<16)|(136<<8)|168; //dc7\r
+      mid[14] = (128<<24)|(195<<16)|(136<<8)|169; //dc8\r
+      mid[15] = (128<<24)|(195<<16)|(136<<8)|169; //dc8\r
+    }\r
+\r
+    if(mid == null) {\r
+      System.out.println("Number of machines not initialized");\r
+      System.exit(1);\r
+    }\r
 \r
     FileSystem[] lus;\r
     atomic {\r
index 9ab76b93007d541420c49f56dfa1cbcc976aed3e..f8cf00a35e791c56f69fd65af3d430488f18db1d 100644 (file)
@@ -6,13 +6,13 @@ public class Barrier extends Thread {
   int rows;
   int cols;
 
-  public Barrier(int n, threadinfo[] tinfo, GameMap[][] land, int maxage, int rows, int cols) {
-    this.land=land;
-    this.maxage=maxage;
-    this.rows=rows;
-    this.cols=cols;
-    this.numthreads=n;
-    this.tinfo=tinfo;
+  public Barrier(int tn, threadinfo[] ttinfo, GameMap[][] tland, int tmaxage, int trows, int tcols) {
+    land=tland;
+    maxage=tmaxage;
+    rows=trows;
+    cols=tcols;
+    numthreads=tn;
+    tinfo=ttinfo;
     /*
     this.tinfo=global new threadinfo[n];
     for(int i=0; i<n; i++) {
@@ -61,7 +61,7 @@ public class Barrier extends Thread {
     boolean cont=true;
     int count=0;
 
-    /* Here we see if we are the first non-failed machine...if so, we operate the barrier...if not we wait for our signal */
+    // Here we see if we are the first non-failed machine...if so, we operate the barrier...if not we wait for our signal 
     while(cont&&count!=threadid) {
       if (Thread.getStatus(count)==-1) {
         count++;
@@ -74,7 +74,7 @@ public class Barrier extends Thread {
     }
 
     if (count==threadid) {
-      /* We are the first non-failed machine...*/
+      // We are the first non-failed machine....
       int waitingon=numthreads-threadid-1;
       boolean waiting[]=new boolean[waitingon];
 
index 89e46a499ebaa80659faa3964aed1509d21a1b98..5790721d994ce4c75af03046445f99f75719fdaf 100644 (file)
@@ -108,16 +108,42 @@ public class RainForest extends Thread {
     int numThreads= tmprf.numThreads;
     threadinfo[] tinfo;
     Barrier mybarr;
+    int[] mid = null;
+
+    if(numThreads <= 8 ) {
+      mid = new int[8];
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    } else {
+      mid = new int[16];
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[8] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[9] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[10] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[11] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[12] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[13] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[14] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+      mid[15] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    }
 
-    int[] mid = new int[8];
-    mid[0] = (128<<24)|(195<<16)|(136<<8)|162;//dc-1
-    mid[1] = (128<<24)|(195<<16)|(136<<8)|163;//dc-2
-    mid[2] = (128<<24)|(195<<16)|(136<<8)|164;//dc-3
-    mid[3] = (128<<24)|(195<<16)|(136<<8)|165;//dc-4
-    mid[4] = (128<<24)|(195<<16)|(136<<8)|166;//dc-5
-    mid[5] = (128<<24)|(195<<16)|(136<<8)|167;//dc-6
-    mid[6] = (128<<24)|(195<<16)|(136<<8)|168;//dc-7
-    mid[7] = (128<<24)|(195<<16)|(136<<8)|169;//dc-8
+    if(mid == null) {
+      System.out.println("Number of machines not initialized");
+      System.exit(1);
+    }
 
 
     // Init land and place rocks in boundaries
index 32fa019d4d58dfd90c099be2bfbb57b339db9612..99b17eeda6fc4e03bababaf364bba20d7ba4f4d5 100644 (file)
@@ -98,35 +98,42 @@ public class MatrixMultiply extends Task {
       System.exit(0);
     }
 
-    //int[] mid = new int[16];
-    int[] mid = new int[8];
-    /*
-    mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
-    mid[1] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
-    mid[2] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
-    mid[3] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
-    mid[4] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
-    mid[5] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
-    mid[6] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
-    mid[7] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
-    mid[8] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
-    mid[9] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
-    mid[10] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
-    mid[11] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
-    mid[12] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
-    mid[13] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
-    mid[14] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
-    mid[15] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
-    */
-
-    mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
-    mid[1] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
-    mid[2] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
-    mid[3] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
-    mid[4] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
-    mid[5] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
-    mid[6] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
-    mid[7] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    int[] mid = null;
+
+    if(NUM_THREADS <= 8 ) {
+      mid = new int[8];
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    } else {
+      mid = new int[16];
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[8] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[9] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[10] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[11] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[12] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[13] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[14] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+      mid[15] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    }
+
+    if(mid == null) {
+      System.out.println("mid variable not initialized");
+      System.exit(1);
+    }
 
     atomic {
       //System.out.println("atomic 1");
index 37e97cd31e48630a2f5f1cc44583c6da5cebed31..2b079c1241bd1b01ec42ebd766241b13a6f998ed 100644 (file)
@@ -127,25 +127,47 @@ 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
-    mid[3] = (128<<24)|(195<<16)|(136<<8)|165; //dc-4.calit2
-    mid[4] = (128<<24)|(195<<16)|(136<<8)|166; //dc-5.calit2
-    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);
     int nthreads = sf.nthreads;
+    int[] mid = null;
+
+    if(nthreads <= 8 ) {
+      mid = new int[8];
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    } else {
+      mid = new int[16];
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[8] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[9] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[10] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[11] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[12] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[13] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[14] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+      mid[15] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    }
+
+    if(mid == null) {
+      System.out.println("Number of machines not initialized");
+      System.exit(1);
+    }
+
 
     //Create Global data structure 
     DistributedHashMap dhmap;
index 663ef1c6cbd5d3cc858e9f1e990471e57069cc5f..6a55e83a729f8eb961a108105d4ee460d6bf465e 100644 (file)
@@ -41,6 +41,7 @@ public class QueryTask extends Task {
       atomic {
         hostname = new String(GlobalString.toLocalCharArray(getHostName()));
         path = new String(GlobalString.toLocalCharArray(getPath()));
+        //Debug to check the presence for html files
         System.out.println("hostname= " + hostname + " path= " + path);
         GlobalStringBuffer gsb = global new GlobalStringBuffer(hostname);
         gsb.append("/");
diff --git a/Robust/src/Benchmarks/Recovery/Spider/recovery/README b/Robust/src/Benchmarks/Recovery/Spider/recovery/README
new file mode 100644 (file)
index 0000000..6ce8804
--- /dev/null
@@ -0,0 +1,13 @@
+Running the spider benchmark:
+
+1. cd into directory 
+~/research/Robust/src/Benchmarks/Recovery/Spider/recovery/gendata
+
+2. compile  GenerateWebFile.java 
+  javac  GenerateWebFile.java
+
+3. Run the class file
+  java GenerateWebFile
+
+4. copy the *.html from this directory to 
index e1292afd5d7d997ac1cd6b1af7d008a264a2a7ce..995d7c3fef2a30cb904e061924e19d50576a7e80 100644 (file)
@@ -24,16 +24,43 @@ public class Spider {
     }
     
     int nQueue = 3;
-    int mid[] = new int[8];
+    int[] mid = null;
+
+    if(NUM_THREADS <= 8 ) {
+      mid = new int[8];
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    } else {
+      mid = new int[16];
+      mid[0] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[1] = (128<<24)|(195<<16)|(136<<8)|162; //dc1
+      mid[2] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[3] = (128<<24)|(195<<16)|(136<<8)|163; //dc2
+      mid[4] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[5] = (128<<24)|(195<<16)|(136<<8)|164; //dc3
+      mid[6] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[7] = (128<<24)|(195<<16)|(136<<8)|165; //dc4
+      mid[8] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[9] = (128<<24)|(195<<16)|(136<<8)|166; //dc5
+      mid[10] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[11] = (128<<24)|(195<<16)|(136<<8)|167; //dc6
+      mid[12] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[13] = (128<<24)|(195<<16)|(136<<8)|168; //dc7
+      mid[14] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+      mid[15] = (128<<24)|(195<<16)|(136<<8)|169; //dc8
+    }
+
+    if(mid == null) {
+      System.out.println("mid variable not initialized");
+      System.exit(1);
+    }
 
-    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;
-    mid[3] = (128<<24)|(195<<16)|(136<<8)|165;
-    mid[4] = (128<<24)|(195<<16)|(136<<8)|166;
-    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;
     
     TaskSet ts;
     atomic {
index 75fe2cf9265142211b517446d7921dc0e429ec0d..ac3dd321ac80e5ad99ec1d910d70cabe93ea159b 100644 (file)
@@ -1,5 +1,5 @@
 #testcase 8 MatrixMultiply:2048 80
 #testcase 8 Spider:"dc-11.calit2.uci.edu" 10
-testcase 8 FileSystem:
+#testcase 8 FileSystem:
 #testcase 8 SpamFilter:-e 500 -n 10
-#testcase 8 Game:
+testcase 8 Game:
diff --git a/Robust/src/Benchmarks/Recovery/bm_args_16threads.txt b/Robust/src/Benchmarks/Recovery/bm_args_16threads.txt
new file mode 100644 (file)
index 0000000..4721aca
--- /dev/null
@@ -0,0 +1,5 @@
+testcase 16 MatrixMultiply:2048 80
+#testcase 16 Spider:"dc-11.calit2.uci.edu" 10
+testcase 16 FileSystem:
+testcase 16 SpamFilter:-e 500 -n 10
+testcase 16 Game:
index 8f5604cc194a2df6db8b6554cfbe458a8e91807c..9bbcf9848ae81ace2867c3e2d84b5b54670e5e90 100755 (executable)
@@ -10,8 +10,8 @@
 BASEDIR=`pwd`
 RECOVERYDIR='recovery'
 JAVASINGLEDIR='java'
-WAITTIME=120
-KILLDELAY=10
+WAITTIME=180
+KILLDELAY=6
 LOGDIR=~/research/Robust/src/Benchmarks/Recovery/runlog
 DSTMDIR=${HOME}/research/Robust/src/Benchmarks/Prefetch/config
 MACHINELIST='dc-1.calit2.uci.edu dc-2.calit2.uci.edu dc-3.calit2.uci.edu dc-4.calit2.uci.edu dc-5.calit2.uci.edu dc-6.calit2.uci.edu dc-7.calit2.uci.edu dc-8.calit2.uci.edu'
@@ -20,7 +20,7 @@ USER='adash'
 # 0 mean new test 
 # 1~8 machine id to be killed
 
-### Sequential Machine failure order ######
+## Sequential Machine failure order ######
 ORDER=( 0 1 3 5 7 8 2    
         0 1 2 3 4 5 6 
         0 1 8 4 6 3 7 
@@ -101,6 +101,12 @@ function runNormalTest {
   echo ${BM_DIR}
   cd ${BM_DIR}
 
+
+  NUMM=$NUM_MACHINE;
+  if [ $NUM_MACHINE == 16 ]; then
+    NUMM=8;
+  fi
+
   tt=1;
   while [ $tt -le $NUM_MACHINE ]; do
     echo "------------------------------- Normal Test $1 ----------------------------" >> log-$tt
@@ -144,9 +150,9 @@ function runSequentialFailureTest {
       outputIter=0;
       for outputIter in 1 2 3 4 5 6 7 8
       do
-        echo "------------------------------- Failure Test $test_iter ----------------------------" >> log-$outputIter
+        echo "------------------------------- Sequential Failure Test $test_iter ----------------------------" >> log-$outputIter
       done
-      echo "------------------------------- Failure Test $test_iter ----------------------------"
+      echo "------------------------------- Sequential Failure Test $test_iter ----------------------------"
       runMachines log   
       sleep 10           # wait until all machine run
       test_iter=`expr $test_iter + 1`
@@ -155,7 +161,7 @@ function runSequentialFailureTest {
       echo "------------------------ dc-$k is killed ------------------------"
       killonemachine $fName $k
       
-      let "delay= $RANDOM % $KILLDELAY + 15"
+      let "delay= $RANDOM % $KILLDELAY + 8"
       sleep $delay
     fi 
   done
@@ -175,9 +181,8 @@ function runSingleFailureTest {
 
   test_iter=1;
 
-#ORDER=( 0 1 8 4 6 3 7 );
-#SINGLE_ORDER=( 1 8 4 6 3 2 7 5 );
- SINGLE_ORDER=( 8 );
+SINGLE_ORDER=( 1 8 4 6 3 2 7 5 );
+#SINGLE_ORDER=( 8 );
 
 
   for machinename in ${SINGLE_ORDER[@]}
@@ -185,9 +190,9 @@ function runSingleFailureTest {
     outputIter=0;
     for outputIter in 1 2 3 4 5 6 7 8
     do
-      echo "------------------------------- Failure Test $test_iter ----------------------------" >> log-$outputIter
+      echo "------------------------------- Single Failure Test $test_iter ----------------------------" >> log-$outputIter
     done
-    echo "------------------------------- Failure Test $test_iter ----------------------------"
+    echo "------------------------------- Single Failure Test $test_iter ----------------------------"
     runMachines log   
     sleep 10           # wait until all machine run
     test_iter=`expr $test_iter + 1`
@@ -343,18 +348,19 @@ function testcase {
   # terminate if it doesn't have parameter
   let "NUM_MACHINE= $nummachines + 0";
 
-#  echo "====================================== Normal Test =============================="
-#  runNormalTest $NUM_MACHINES 1 
-#  echo "================================================================================"
-
-  echo "====================================== Failure Test ============================="
-  runSequentialFailureTest $NUM_MACHINES
-  echo "================================================================================="
+  echo "====================================== Normal Test =============================="
+  runNormalTest $NUM_MACHINES 1 
+  echo "================================================================================"
 
 #  echo "====================================== Single Failure Test ============================="
 #  runSingleFailureTest $NUM_MACHINES
 #  echo "================================================================================="
 
+#  echo "====================================== Sequential Failure Test ============================="
+#  runSequentialFailureTest $NUM_MACHINES
+#  echo "================================================================================="
+
+  
 #  echo "=============== Running javasingle for ${BM_NAME} on 1 machines ================="
 #  javasingle 1 ${BM_NAME}
 #  cd $TOPDIR
@@ -447,6 +453,6 @@ function dsmsingle {
 
 echo "---------- Starting Benchmarks ----------"
 nmach=$1
-source bm_args.txt
-#source bm_args_16threads.txt
+#source bm_args.txt
+source bm_args_16threads.txt
 echo "----------- done ------------"