From a93fe4dc7e60d7e60964ba2dcc295355b9df4a97 Mon Sep 17 00:00:00 2001 From: adash Date: Thu, 12 Mar 2009 01:36:32 +0000 Subject: [PATCH] bug fixes for LookUpServerThread.java compile error fixes for MatrixMultiplyN.java small changes to script changes to JGFMolDynBenchSizeC.java for new parameter for Moldyn --- .../Distributed/LookUpService/dsm/makefile | 2 +- .../dsm2/DistributedHashMap.java | 2 +- .../java/LookUpServerThread.java | 15 +++++- .../Distributed/LookUpService/java/makefile | 4 +- .../Distributed/RainForest/dsm/makefile | 2 +- Robust/src/Benchmarks/Distributed/runall.sh | 5 ++ Robust/src/Benchmarks/Distributed/runjava.sh | 33 +++++++++++- .../Benchmarks/Prefetch/2DConv/dsm/Makefile | 2 +- .../Benchmarks/Prefetch/2DFFT/dsm/Makefile | 2 +- .../src/Benchmarks/Prefetch/Chase/Chase.java | 2 +- Robust/src/Benchmarks/Prefetch/Chase/makefile | 4 +- .../2DConv/ConvolutionSizeC.java | 19 ++----- .../MatrixMultiply/MatrixMultiplyN.java | 6 +-- .../ManualPrefetch/MatrixMultiply/makefile | 6 +-- .../Moldyn/JGFInstrumentor.java | 2 + .../ManualPrefetch/Moldyn/JGFMolDynBench.java | 24 +++++++-- .../Prefetch/ManualPrefetch/Moldyn/makefile | 2 +- .../Benchmarks/Prefetch/ManualPrefetch/bm.txt | 7 ++- .../Benchmarks/Prefetch/ManualPrefetch/run.sh | 53 +++---------------- .../Prefetch/MatrixMultiply/dsm/makefile | 2 +- .../MatrixMultiply/javasingle/makefile | 2 +- .../Prefetch/Moldyn/dsm/JGFInstrumentor.java | 2 + .../Prefetch/Moldyn/dsm/JGFMolDynBench.java | 2 +- .../Moldyn/dsm/JGFMolDynBenchSizeC.java | 2 +- .../Benchmarks/Prefetch/Moldyn/dsm/makefile | 4 +- .../Moldyn/javasingle/JGFInstrumentor.java | 2 + .../Moldyn/javasingle/JGFMolDynBench.java | 2 +- .../javasingle/JGFMolDynBenchSizeC.java | 2 +- .../Prefetch/Moldyn/javasingle/makefile | 2 +- Robust/src/Benchmarks/Prefetch/bm.txt | 4 +- Robust/src/Benchmarks/Prefetch/run.sh | 39 +++++++------- 31 files changed, 141 insertions(+), 116 deletions(-) diff --git a/Robust/src/Benchmarks/Distributed/LookUpService/dsm/makefile b/Robust/src/Benchmarks/Distributed/LookUpService/dsm/makefile index f31b9b6c..857dc843 100644 --- a/Robust/src/Benchmarks/Distributed/LookUpService/dsm/makefile +++ b/Robust/src/Benchmarks/Distributed/LookUpService/dsm/makefile @@ -6,8 +6,8 @@ FLAGS3=-dsm -optimize -mainclass ${MAINCLASS} FLAGS4=-dsm -dsmcaching -optimize -mainclass ${MAINCLASS} default: ../../../../buildscript ${FLAGS3} -o ${MAINCLASS}NPNC ${SRC1} - ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}N ${SRC1} ../../../../buildscript ${FLAGS4} -o ${MAINCLASS}NPC ${SRC1} +#../../../../buildscript ${FLAGS2} -o ${MAINCLASS}N ${SRC1} clean: rm -rf tmpbuilddirectory rm *.bin diff --git a/Robust/src/Benchmarks/Distributed/LookUpService/dsm2/DistributedHashMap.java b/Robust/src/Benchmarks/Distributed/LookUpService/dsm2/DistributedHashMap.java index 0f147e5a..180945e4 100644 --- a/Robust/src/Benchmarks/Distributed/LookUpService/dsm2/DistributedHashMap.java +++ b/Robust/src/Benchmarks/Distributed/LookUpService/dsm2/DistributedHashMap.java @@ -59,7 +59,7 @@ public class DistributedHashMap { Object obj1 = dhe.array; short[] offsets1 = new short[4]; offsets1[0] = getoffset {DHashEntry, next}; - offsets1[1] = (short) 2; + offsets1[1] = (short) 5; offsets1[2] = getoffset {DHashEntry, key}; offsets1[3] = (short) 0; System.rangePrefetch(obj1, offsets1); diff --git a/Robust/src/Benchmarks/Distributed/LookUpService/java/LookUpServerThread.java b/Robust/src/Benchmarks/Distributed/LookUpService/java/LookUpServerThread.java index 1e604653..08bf7086 100644 --- a/Robust/src/Benchmarks/Distributed/LookUpService/java/LookUpServerThread.java +++ b/Robust/src/Benchmarks/Distributed/LookUpService/java/LookUpServerThread.java @@ -29,7 +29,11 @@ public class LookUpServerThread extends Thread { if(str1.equalsIgnoreCase("r")) { Integer tmpval = doRead(this, keyitem); //Write object to socket for client - sock.write(tmpval.intToByteArray()); + if(tmpval == null) { //If Object not found in hash map + sock.write(fillBytes(0)); + } else { + sock.write(tmpval.intToByteArray()); + } } else { /* update hashmap if opcode sent is "w" */ doUpdate(r, this, keyitem); @@ -60,6 +64,15 @@ public class LookUpServerThread extends Thread { return; } + byte[] fillBytes(int val) { + byte[] b = new byte[4]; + for(int i = 0; i<4; i++) { + int offset = (3 - i) * 8; + b[i] = (byte) ((val >> offset) & 0xFF); + } + return b; + } + /* * Convert byte array into int type **/ diff --git a/Robust/src/Benchmarks/Distributed/LookUpService/java/makefile b/Robust/src/Benchmarks/Distributed/LookUpService/java/makefile index 53fc7253..dd63bef9 100644 --- a/Robust/src/Benchmarks/Distributed/LookUpService/java/makefile +++ b/Robust/src/Benchmarks/Distributed/LookUpService/java/makefile @@ -3,8 +3,8 @@ MAINCLASS2=LookUpClient SRC1=${MAINCLASS1}.java \ LookUpServerThread.java SRC2=${MAINCLASS2}.java -FLAGS= -thread -nooptimize -debug -mainclass ${MAINCLASS1} -FLAGS1= -thread -nooptimize -debug -mainclass ${MAINCLASS2} +FLAGS= -thread -optimize -mainclass ${MAINCLASS1} +FLAGS1= -thread -optimize -mainclass ${MAINCLASS2} default : ../../../../buildscript ${FLAGS} -o Server ${SRC1} diff --git a/Robust/src/Benchmarks/Distributed/RainForest/dsm/makefile b/Robust/src/Benchmarks/Distributed/RainForest/dsm/makefile index 6d30076f..4fee6057 100644 --- a/Robust/src/Benchmarks/Distributed/RainForest/dsm/makefile +++ b/Robust/src/Benchmarks/Distributed/RainForest/dsm/makefile @@ -19,7 +19,7 @@ default: ./extractLines ../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPNC ${SRC} ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPC ${SRC} - ../../../../buildscript ${FLAGS3} -o ${MAINCLASS}N ${SRC} +# ../../../../buildscript ${FLAGS3} -o ${MAINCLASS}N ${SRC} clean: rm tmp1RainForest.java diff --git a/Robust/src/Benchmarks/Distributed/runall.sh b/Robust/src/Benchmarks/Distributed/runall.sh index b064f7d0..748f2a54 100755 --- a/Robust/src/Benchmarks/Distributed/runall.sh +++ b/Robust/src/Benchmarks/Distributed/runall.sh @@ -1,2 +1,7 @@ #!/bin/sh +./runjava.sh 1 +./runjava.sh 2 +./runjava.sh 4 ./runjava.sh 6 +./runjava.sh 8 +echo "done" diff --git a/Robust/src/Benchmarks/Distributed/runjava.sh b/Robust/src/Benchmarks/Distributed/runjava.sh index d9e90262..458414bb 100755 --- a/Robust/src/Benchmarks/Distributed/runjava.sh +++ b/Robust/src/Benchmarks/Distributed/runjava.sh @@ -5,7 +5,16 @@ DSTM_CONFDIR=${HOME}/research/Robust/src JAVA_DIR=java JVM_DIR=jvm DSM_DIR=dsm -ITERATIONS=1 +ITERATIONS=2 +TOPDIR=${HOME}/research/Robust/src/Prefetch + +function killclients { + i=1; + while [ $i -le $1 ]; do + ssh dc-${i}.calit2.uci.edu 'killall Client.bin;' + i=`expr $i + 1` + done +} function runjava { # Run java version @@ -22,6 +31,7 @@ function runjava { # Start the clients k=1; echo ${BASEDIR}/${BM_DIR} > ~/.tmpdir + perl -x${TOPDIR} ${TOPDIR}/switch/fetch_stat.pl clear_stats settings=switch/clearsettings.txt while [ $k -le $1 ]; do echo "SSH into dc-${k}" SEED=`expr $k \* 100` @@ -34,7 +44,15 @@ function runjava { fi k=`expr $k + 1` done - sleep 20; + killclients $k + sleep 10; + perl -x${TOPDIR} ${TOPDIR}/switch/fetch_stat.pl settings=switch/settings.txt + cat ${LOGDIR}/tmp >> ${LOGDIR}/${BM_NAME}_${1}Thrd.txt + if [ $i -eq 0 ];then echo "

Benchmark=${BM_NAME} Thread=${1}


" > ${LOGDIR}/${BM_NAME}_${1}Thrd_a.html ;fi + cat ${LOGDIR}/tmp >> ${LOGDIR}/${BM_NAME}_${1}Thrd_a.html + echo "Network Stats
" >> ${LOGDIR}/${BM_NAME}_${1}Thrd_a.html + mv ${TOPDIR}/html/dell.html ${LOGDIR}/${BM_NAME}_${1}Thrd_${j}.html + j=`expr $j + 1` cd - done @@ -72,6 +90,14 @@ function runjvm { done } +function calcavg { + for file in `ls ${LOGDIR}/*.out` + do + echo -n $file + cat $file | awk '{sum += $1} END {print " "sum/NR}' + done +} + exec < bm_args.txt while read line do @@ -95,3 +121,6 @@ do rm ~/.bmargs rm ~/.tmpdir done + +echo "------- Calculating Averages -------- " +calcavg diff --git a/Robust/src/Benchmarks/Prefetch/2DConv/dsm/Makefile b/Robust/src/Benchmarks/Prefetch/2DConv/dsm/Makefile index 2fbab3e0..2d5dfe40 100644 --- a/Robust/src/Benchmarks/Prefetch/2DConv/dsm/Makefile +++ b/Robust/src/Benchmarks/Prefetch/2DConv/dsm/Makefile @@ -13,7 +13,7 @@ default: # ../../../../buildscript ${FLAGS} ${SRC1} -o ${MAINCLASS}N ../../../../buildscript ${FLAGS1} ${SRC2} -o ${MAINCLASS}NPNC ../../../../buildscript ${FLAGS2} ${SRC2} -o ${MAINCLASS}NPC - ../../../../buildscript ${FLAGS} ${SRC2} -o ${MAINCLASS}N +# ../../../../buildscript ${FLAGS} ${SRC2} -o ${MAINCLASS}N clean: rm -rf tmpbuilddirectory diff --git a/Robust/src/Benchmarks/Prefetch/2DFFT/dsm/Makefile b/Robust/src/Benchmarks/Prefetch/2DFFT/dsm/Makefile index 38963d9f..c4fdf13f 100644 --- a/Robust/src/Benchmarks/Prefetch/2DFFT/dsm/Makefile +++ b/Robust/src/Benchmarks/Prefetch/2DFFT/dsm/Makefile @@ -10,7 +10,7 @@ FLAGS2=-dsm -optimize -dsmcaching -mainclass ${MAINCLASS} default: ../../../../buildscript ${FLAGS1} ${SRC} -o ${MAINCLASS}NPNC ../../../../buildscript ${FLAGS2} ${SRC} -o ${MAINCLASS}NPC - ../../../../buildscript ${FLAGS} ${SRC} -o ${MAINCLASS}N +# ../../../../buildscript ${FLAGS} ${SRC} -o ${MAINCLASS}N clean: rm -rf tmpbuilddirectory diff --git a/Robust/src/Benchmarks/Prefetch/Chase/Chase.java b/Robust/src/Benchmarks/Prefetch/Chase/Chase.java index 37806875..24ed0cb2 100644 --- a/Robust/src/Benchmarks/Prefetch/Chase/Chase.java +++ b/Robust/src/Benchmarks/Prefetch/Chase/Chase.java @@ -24,7 +24,7 @@ public class Chase extends Thread { c=global new Chase(fold); } - c.start((128<<24)|(195<<16)|(175<<8)|79); + c.start((128<<24)|(195<<16)|(136<<8)|162); c.join(); } diff --git a/Robust/src/Benchmarks/Prefetch/Chase/makefile b/Robust/src/Benchmarks/Prefetch/Chase/makefile index b06f7807..86fb4223 100644 --- a/Robust/src/Benchmarks/Prefetch/Chase/makefile +++ b/Robust/src/Benchmarks/Prefetch/Chase/makefile @@ -1,7 +1,6 @@ MAINCLASS=Chase SRC1=${MAINCLASS}.java -FLAGS=-dsm -prefetch -dsmcaching -optimize -excprefetch Chase.main -excprefetch Chase.Chase -mainclass ${MAINCLASS} -trueprob 0.7 -FLAGS1=-dsm -rangeprefetch -dsmcaching -optimize -mainclass ${MAINCLASS} -trueprob 0.7 +#FLAGS=-dsm -prefetch -dsmcaching -optimize -excprefetch Chase.main -excprefetch Chase.Chase -mainclass ${MAINCLASS} -trueprob 0.7 FLAGS2=-dsm -dsmcaching -optimize -mainclass ${MAINCLASS} -trueprob 0.7 FLAGS3=-dsm -optimize -mainclass ${MAINCLASS} -trueprob 0.7 #for testing no java option @@ -9,7 +8,6 @@ FLAGS3=-dsm -optimize -mainclass ${MAINCLASS} -trueprob 0.7 default: ../../../buildscript ${FLAGS3} -o ${MAINCLASS}NPNC ${SRC1} ../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC1} - ../../../buildscript ${FLAGS1} -o ${MAINCLASS}RangeP ${SRC1} clean: rm -rf tmpbuilddirectory diff --git a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/2DConv/ConvolutionSizeC.java b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/2DConv/ConvolutionSizeC.java index 241e89b2..bf9b662a 100644 --- a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/2DConv/ConvolutionSizeC.java +++ b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/2DConv/ConvolutionSizeC.java @@ -21,9 +21,7 @@ public class Convolution extends Thread { } // - //Prefetch this.img.inputImage[] the first 32 objects - // Generates compiler error ??? - Object o = this; + //Add manual prefetch this.img.inputImage[] the first 32 objects short[] offsets = new short[6]; offsets[0] = getoffset{Convolution, img}; offsets[1] = (short) 0; @@ -31,19 +29,12 @@ public class Convolution extends Thread { offsets[3] = (short) 0; offsets[4] = (short) tempx0; offsets[5] = (short) 31; - System.rangePrefetch(o, offsets); + System.rangePrefetch(this, offsets); //Prefetch this.img.outputImage[] the first 32 objects - // Generates compiler error ??? - Object o1 = this; - short[] offsets1 = new short[6]; - offsets1[0] = getoffset{Convolution, img}; - offsets1[1] = (short) 0; - offsets1[2] = getoffset{Image, outputImage}; - offsets1[3] = (short) 0; - offsets1[4] = (short) tempx0; - offsets1[5] = (short) 31; - System.rangePrefetch(o1, offsets1); + offsets[2] = getoffset{Image, outputImage}; + offsets[3] = (short) 0; + System.rangePrefetch(this, offsets); int kernelHeight=15; int kernelWidth=15; diff --git a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/MatrixMultiply/MatrixMultiplyN.java b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/MatrixMultiply/MatrixMultiplyN.java index 2d08aba8..1fc9b115 100644 --- a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/MatrixMultiply/MatrixMultiplyN.java +++ b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/MatrixMultiply/MatrixMultiplyN.java @@ -42,16 +42,16 @@ public class MatrixMultiply extends Thread{ double a[]=la[i]; double c[]=lc[i]; if ((l&15)==0) { - offsets2[0] = (short) x0+l; + offsets2[0] = (short) (x0+l); if ((x0+l+16)>x1) { int x=x1-x0-l-1; if (x>0) { - offsets[1]=(short) x; + offsets2[1]=(short) x; System.rangePrefetch(la, offsets2); System.rangePrefetch(lc, offsets2); } } else { - offsets[1] = (short) 15; + offsets2[1] = (short) 15; System.rangePrefetch(la, offsets2); System.rangePrefetch(lc, offsets2); } diff --git a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/MatrixMultiply/makefile b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/MatrixMultiply/makefile index 9a893f21..a482a4f0 100644 --- a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/MatrixMultiply/makefile +++ b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/MatrixMultiply/makefile @@ -1,12 +1,8 @@ MAINCLASS=MatrixMultiply SRC1=${MAINCLASS}N.java -FLAGS=-dsm -dsmcaching -prefetch -optimize -excprefetch MatrixMultiply.main -excprefetch MMul.setValues -excprefetch MMul.transpose -mainclass ${MAINCLASS} -trueprob 0.98 FLAGS1=-dsm -dsmcaching -rangeprefetch -optimize -mainclass ${MAINCLASS} -trueprob 0.98 -FLAGS2=-dsm -optimize -mainclass ${MAINCLASS} default: - ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC ${SRC1} - ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC1} - ../../../../buildscript ${FLAGS1} -o ${MAINCLASS}RangePN ${SRC1} + ../../../../buildscript ${FLAGS1} -o ${MAINCLASS}RangeN ${SRC1} clean: rm -rf tmpbuilddirectory diff --git a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/Moldyn/JGFInstrumentor.java b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/Moldyn/JGFInstrumentor.java index 3f9f580c..80db8282 100644 --- a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/Moldyn/JGFInstrumentor.java +++ b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/Moldyn/JGFInstrumentor.java @@ -183,6 +183,8 @@ public class JGFInstrumentor{ header = base + "3 - Size A"; else if (size == 1) header = base + "3 - Size B"; + else if (size == 2) + header = base + "3 - Size C"; } System.printString(header + "\n"); diff --git a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/Moldyn/JGFMolDynBench.java b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/Moldyn/JGFMolDynBench.java index 59b6e8a5..9f88f521 100644 --- a/Robust/src/Benchmarks/Prefetch/ManualPrefetch/Moldyn/JGFMolDynBench.java +++ b/Robust/src/Benchmarks/Prefetch/ManualPrefetch/Moldyn/JGFMolDynBench.java @@ -54,7 +54,7 @@ public class JGFMolDynBench { datasizes = global new int[3]; datasizes[0] = 8; datasizes[1] = 13; - datasizes[2] = 18; + datasizes[2] = 11; mm = datasizes[size]; PARTSIZE = mm*mm*mm*4; @@ -421,9 +421,17 @@ class mdRunner extends Thread { for (int move=0;move ~/.tmpdir - echo "bin=$3" > ~/.tmpvars - echo "arg='$ARGS1'" > ~/.tmpargs - echo "logd=$LOGDIR" > ~/.tmplogdir - echo "ext=$EXTENSION" > ~/.tmpext - ./$3 & - ssh $MACHINES2 'cd `cat ~/.tmpdir`; source ~/.tmpvars; source ~/.tmpargs; source ~/.tmplogdir; source ~/.tmpext; /usr/bin/time -f "%e" ./$bin master $arg 2>> ${logd}/${bin}_remote_${ext}.txt' - echo "Terminating ... " - killall $3 - sleep 2 - i=`expr $i + 1` - done -} - -function localrun { - rm dstm.conf - DSTMDIR=${HOME}/research/Robust/src/Benchmarks/Prefetch/config - ln -s ${DSTMDIR}/dstm_1.conf dstm.conf - i=0; - while [ $i -lt $1 ]; do - /usr/bin/time -f "%e" ./${MANUAL_PREFETCH} master $ARGS1 2> ${LOGDIR}/tmp - cat ${LOGDIR}/tmp >> ${LOGDIR}/${MANUAL_PREFETCH}_local_${EXTENSION}.txt -# if [ $i -eq 0 ];then echo "

Benchmark=${NONPREFETCH_NONCACHE} Thread=1local Extension=${EXTENSION}


" > ${LOGDIR}/${NONPREFETCH_NONCACHE}_${EXTENSION}_1local_a.html ;fi -# cat ${LOGDIR}/tmp >> ${LOGDIR}/${NONPREFETCH_NONCACHE}_${EXTENSION}_1local_a.html -# echo "
" >> ${LOGDIR}/${NONPREFETCH_NONCACHE}_${EXTENSION}_1local_a.html - sleep 2 - i=`expr $i + 1` - done -} - function callrun { MANUAL_PREFETCH=${BENCHMARK}RangeN.bin cd $BMDIR - echo "---------- Running local $BMDIR non-prefetch on 1 machine ---------- " - # localrun 1 - -for count in 2 4 6 8 -do -echo "------- Running $count threads $BMDIR manual prefetch on $count machines -----" -run 1 $count ${MANUAL_PREFETCH} -done + for count in 2 4 6 8 + do + echo "------- Running $count threads $BMDIR manual prefetch on $count machines -----" + run 1 $count ${MANUAL_PREFETCH} + done -cd $TOPDIR + cd $TOPDIR } -#benchmarks='rainforest' -benchmarks='moldynverB' echo "---------- Clean old files ---------- " rm runlog/* for b in `echo $benchmarks` diff --git a/Robust/src/Benchmarks/Prefetch/MatrixMultiply/dsm/makefile b/Robust/src/Benchmarks/Prefetch/MatrixMultiply/dsm/makefile index 064683cb..d70a6d49 100644 --- a/Robust/src/Benchmarks/Prefetch/MatrixMultiply/dsm/makefile +++ b/Robust/src/Benchmarks/Prefetch/MatrixMultiply/dsm/makefile @@ -7,7 +7,7 @@ FLAGS2=-dsm -optimize -mainclass ${MAINCLASS} default: ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC ${SRC1} ../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPC ${SRC1} - ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC1} +# ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC1} # ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC200 ${SRC2} # ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N200 ${SRC2} diff --git a/Robust/src/Benchmarks/Prefetch/MatrixMultiply/javasingle/makefile b/Robust/src/Benchmarks/Prefetch/MatrixMultiply/javasingle/makefile index 67270f6a..bbc9c37d 100644 --- a/Robust/src/Benchmarks/Prefetch/MatrixMultiply/javasingle/makefile +++ b/Robust/src/Benchmarks/Prefetch/MatrixMultiply/javasingle/makefile @@ -3,7 +3,7 @@ SRC1=${MAINCLASS}N.java SRC2=${MAINCLASS}Nrun.java default: ../../../../buildscript -thread -optimize -mainclass ${MAINCLASS} ${SRC1} -o ${MAINCLASS} - ../../../../buildscript -thread -optimize -mainclass ${MAINCLASS} ${SRC2} -o ${MAINCLASS}N +# ../../../../buildscript -thread -optimize -mainclass ${MAINCLASS} ${SRC2} -o ${MAINCLASS}N clean: rm -rf tmpbuilddirectory diff --git a/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFInstrumentor.java b/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFInstrumentor.java index 3f9f580c..80db8282 100644 --- a/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFInstrumentor.java +++ b/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFInstrumentor.java @@ -183,6 +183,8 @@ public class JGFInstrumentor{ header = base + "3 - Size A"; else if (size == 1) header = base + "3 - Size B"; + else if (size == 2) + header = base + "3 - Size C"; } System.printString(header + "\n"); diff --git a/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFMolDynBench.java b/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFMolDynBench.java index 00852131..61fb1eb1 100644 --- a/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFMolDynBench.java +++ b/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFMolDynBench.java @@ -54,7 +54,7 @@ public class JGFMolDynBench { datasizes = global new int[3]; datasizes[0] = 8; datasizes[1] = 13; - datasizes[2] = 18; + datasizes[2] = 11; mm = datasizes[size]; PARTSIZE = mm*mm*mm*4; diff --git a/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFMolDynBenchSizeC.java b/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFMolDynBenchSizeC.java index 04a0afcc..56f37edd 100644 --- a/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFMolDynBenchSizeC.java +++ b/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/JGFMolDynBenchSizeC.java @@ -30,7 +30,7 @@ public class JGFMolDynBenchSizeC { } JGFInstrumentor instr = new JGFInstrumentor(); - JGFInstrumentor.printHeader(3,0,nthreads); + JGFInstrumentor.printHeader(3,2,nthreads); JGFMolDynBench mold; atomic { diff --git a/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/makefile b/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/makefile index 3668f47d..ee86c559 100644 --- a/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/makefile +++ b/Robust/src/Benchmarks/Prefetch/Moldyn/dsm/makefile @@ -1,4 +1,4 @@ -MAINCLASS=JGFMolDynBenchSizeB +MAINCLASS=JGFMolDynBenchSizeC SRC=${MAINCLASS}.java \ JGFInstrumentor.java \ JGFTimer.java \ @@ -14,7 +14,7 @@ FLAGS1=-dsm -dsmcaching -optimize -mainclass ${MAINCLASS} -trueprob 0.75 default: ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC ${SRC} ../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPC ${SRC} - ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC} +# ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC} clean: rm -rf tmpbuilddirectory/ diff --git a/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFInstrumentor.java b/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFInstrumentor.java index 3f9f580c..80db8282 100644 --- a/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFInstrumentor.java +++ b/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFInstrumentor.java @@ -183,6 +183,8 @@ public class JGFInstrumentor{ header = base + "3 - Size A"; else if (size == 1) header = base + "3 - Size B"; + else if (size == 2) + header = base + "3 - Size C"; } System.printString(header + "\n"); diff --git a/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFMolDynBench.java b/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFMolDynBench.java index 91ef8f2c..3ed4ae34 100644 --- a/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFMolDynBench.java +++ b/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFMolDynBench.java @@ -54,7 +54,7 @@ public class JGFMolDynBench { datasizes = new int[3]; datasizes[0] = 8; datasizes[1] = 13; - datasizes[2] = 18; + datasizes[2] = 11; mm = datasizes[size]; PARTSIZE = mm*mm*mm*4; diff --git a/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFMolDynBenchSizeC.java b/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFMolDynBenchSizeC.java index 44249116..170dffb2 100644 --- a/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFMolDynBenchSizeC.java +++ b/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/JGFMolDynBenchSizeC.java @@ -30,7 +30,7 @@ public class JGFMolDynBenchSizeC { } JGFInstrumentor instr = new JGFInstrumentor(); - JGFInstrumentor.printHeader(3,0,nthreads); + JGFInstrumentor.printHeader(3,2,nthreads); JGFMolDynBench mold; mold = new JGFMolDynBench(nthreads); diff --git a/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/makefile b/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/makefile index 85d65c07..521f09ea 100644 --- a/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/makefile +++ b/Robust/src/Benchmarks/Prefetch/Moldyn/javasingle/makefile @@ -1,4 +1,4 @@ -MAINCLASS=JGFMolDynBenchSizeB +MAINCLASS=JGFMolDynBenchSizeC SRC=${MAINCLASS}.java \ JGFInstrumentor.java \ JGFTimer.java \ diff --git a/Robust/src/Benchmarks/Prefetch/bm.txt b/Robust/src/Benchmarks/Prefetch/bm.txt index 51ea672b..a09cf184 100644 --- a/Robust/src/Benchmarks/Prefetch/bm.txt +++ b/Robust/src/Benchmarks/Prefetch/bm.txt @@ -2,6 +2,7 @@ JGFSORBenchSizeA:SOR/dsm:1:2:3:4:5:6:7:8:sorverA JGFSORBenchSizeD:SOR/dsm:1:2:3:4:5:6:7:8:sorverD JGFMolDynBenchSizeA:Moldyn/dsm:1:2:3:4:5:6:7:8:moldynverA JGFMolDynBenchSizeB:Moldyn/dsm:1:2:3:4:5:6:7:8:moldynverB +JGFMolDynBenchSizeC:Moldyn/dsm:1:2:3:4:5:6:7:8:moldynverC JGFMolDynBenchSizeD:Moldyn/dsm:1:2:3:4:5:6:7:8:moldynverD JGFLUFactBenchSizeA:LUFact/dsm:1:2:3:4:5:6:7:8:lufactverA MatrixMultiply:MatrixMultiply/dsm:1 800:2 800:3 800:4 800:5 800:6 800:7 800:8 800:800mmver @@ -15,6 +16,7 @@ Array:Array:::::array fft2d:2DFFT/dsm:1 1600:2 1600:3 1600:4 1600:5 1600:6 1600:7 1600:8 1600:1600fft2d fft2d:2DFFT/dsm:1 1152:2 1152:3 1152:4 1152:5 1152:6 1152:7 1152:8 1152:1152fft2d fft2d:2DFFT/dsm:1 3200:2 3200:3 3200:4 3200:5 3200:6 3200:7 3200:8 3200:3200fft2d +fft2d:2DFFT/dsm:1 2500:2 2500:3 2500:4 2500:5 2500:6 2500:7 2500:8 2500:2500fft2d Heat:HeatFlow/dsm:1 200:2 200:3 200:4 200:5 200:6 200:7 200:8 200:heatflow Convolution:2DConv/dsm:1 4096:2 4096:3 4096:4 4096:5 4096:6 4096:7 4096:8 4096:40962dconv Convolution:2DConv/dsm:1 8192:2 8192:3 8192:4 8192:5 8192:6 8192:7 8192:8 8192:81922dconv @@ -22,6 +24,6 @@ Convolution:2DConv/dsm:1 16000:2 16000:3 16000:4 16000:5 16000:6 16000:7 16000:8 Convolution:2DConv/dsm:1 2048:2 2048:3 2048:4 2048:5 2048:6 2048:7 2048:8 2048:20482dconv Convolution:2DConv/dsm:1 1024:2 1024:3 1024:4 1024:5 1024:6 1024:7 1024:8 1024:10242dconv Convolution:2DConv/dsm:1 6000:2 6000:3 6000:4 6000:5 6000:6 6000:7 6000:8 6000:60002dconv -LookUpService:../Distributed/LookUpService/dsm:-N 1 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 2 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 3 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 4 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 5 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 6 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 7 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 8 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:10lookup +LookUpService:../Distributed/LookUpService/dsm2:-N 1 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 2 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 3 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 4 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 5 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 6 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 7 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:-N 8 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 10:10lookup LookUpService:../Distributed/LookUpService/dsm:-N 1 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 15:-N 2 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 15:-N 3 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 15:-N 4 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 15:-N 5 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 15:-N 6 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 15:-N 7 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 15:-N 8 -nEntry 160 -nTrans 1000 -probRead 96 -nLookUp 15:15lookup RainForest:../Distributed/RainForest/dsm:-N 1:-N 2:-N 3:-N 4:-N 5:-N 6:-N 7:-N 8:rainforest diff --git a/Robust/src/Benchmarks/Prefetch/run.sh b/Robust/src/Benchmarks/Prefetch/run.sh index a7680d00..45865a8a 100755 --- a/Robust/src/Benchmarks/Prefetch/run.sh +++ b/Robust/src/Benchmarks/Prefetch/run.sh @@ -5,7 +5,10 @@ MACHINELIST='dc-1.calit2.uci.edu dc-2.calit2.uci.edu dc-3.calit2.uci.edu dc-4.ca #benchmarks='40962dconv 1200mmver moldynverB 1600fft2d 1152fft2d 10lookup rainforest' #benchmarks='40962dconv' #benchmarks='10lookup' -benchmarks='rainforest' +#benchmarks='rainforest' +#benchmarks='1152fft2d' +benchmarks='moldynverC' +#benchmarks='40962dconv 1200mmver 1152fft2d moldynverA 10lookup rainforest' LOGDIR=~/research/Robust/src/Benchmarks/Prefetch/runlog TOPDIR=`pwd` @@ -212,7 +215,7 @@ function callrun { cd $BMDIR echo "---------- Running local $BMDIR non-prefetch on 1 machine ---------- " -# localrun 1 + localrun 1 # echo "---------- Running single thread remote $BMDIR non-prefetch + non-cache on 2 machines ---------- " # oneremote 1 1 $NONPREFETCH_NONCACHE @@ -222,26 +225,26 @@ function callrun { # oneremote 1 1 $PREFETCH -for count in 8 +for count in 2 4 6 8 do -#echo "------- Running $count threads $BMDIR non-prefetch + non-cache on $count machines -----" -#run 1 $count $NONPREFETCH_NONCACHE -#echo "------- Running $count threads $BMDIR non-prefetch on $count machines -----" -#run 1 $count $NONPREFETCH +echo "------- Running $count threads $BMDIR non-prefetch + non-cache on $count machines -----" +run 1 $count $NONPREFETCH_NONCACHE +echo "------- Running $count threads $BMDIR non-prefetch on $count machines -----" +run 1 $count $NONPREFETCH #echo "------- Running $count threads $BMDIR normal prefetch on $count machines -----" #run 1 $count $PREFETCH -#echo "------- Running $count threads $BMDIR manual prefetch on $count machines -----" -#run 1 $count $MANUAL_PREFETCH +echo "------- Running $count threads $BMDIR manual prefetch on $count machines -----" +run 1 $count $MANUAL_PREFETCH ########### -echo "------- Running $count threads $BMDIR non-prefetch + non-cache on $count machines -----" -runallstats 1 $count $NONPREFETCH_NONCACHE -echo "------- Running $count threads $BMDIR non-prefetch on $count machines -----" -runallstats 1 $count $NONPREFETCH -echo "------- Running $count threads $BMDIR normal prefetch on $count machines -----" -runallstats 1 $count $PREFETCH -echo "------- Running $count threads $BMDIR manual prefetch on $count machines -----" -runallstats 1 $count $MANUAL_PREFETCH +#echo "------- Running $count threads $BMDIR non-prefetch + non-cache on $count machines -----" +#runallstats 1 $count $NONPREFETCH_NONCACHE +#echo "------- Running $count threads $BMDIR non-prefetch on $count machines -----" +#runallstats 1 $count $NONPREFETCH +#echo "------- Running $count threads $BMDIR normal prefetch on $count machines -----" +#runallstats 1 $count $PREFETCH +#echo "------- Running $count threads $BMDIR manual prefetch on $count machines -----" +#runallstats 1 $count $MANUAL_PREFETCH ############# done @@ -311,7 +314,7 @@ do callmicrorun else callrun - #callrunjavasingle + callrunjavasingle fi done -- 2.34.1