|
@@ -24,7 +24,9 @@ fi
|
|
|
# if you just want to re-parse the output of existing logs. "scaling"
|
|
|
# is the subset of "small" that generates the data points for Figure 10;
|
|
|
# see the README for that one, since you need a machine with at least 64
|
|
|
-# cores to generate it.)
|
|
|
+# cores to generate it.) You can also say "single" followed by all the
|
|
|
+# arguments to "run" (below) to run a single experiment; for example:
|
|
|
+# ./repro single readwrite 20 1us 100gbit 128
|
|
|
if [ "$1" == "" ]; then
|
|
|
whichexps="test"
|
|
|
else
|
|
@@ -32,7 +34,11 @@ else
|
|
|
fi
|
|
|
|
|
|
# The number of operations per run; the graphs in the paper use 128
|
|
|
-if [ "$2" == "" ]; then
|
|
|
+if [ "$whichexps" == "single" -o "$2" == "" ]; then
|
|
|
+ # If there's an explicit run on the command line, don't read the
|
|
|
+ # next argument as the number of operations. $numops will be
|
|
|
+ # ignores, anyway, since it will be specified as part of the
|
|
|
+ # command.
|
|
|
numops=128
|
|
|
else
|
|
|
numops="$2"
|
|
@@ -70,6 +76,14 @@ if [ "$whichexps" == "test" ]; then
|
|
|
exit
|
|
|
fi
|
|
|
|
|
|
+# Be able to run a single experiment specified on the command line
|
|
|
+if [ "$whichexps" == "single" ]; then
|
|
|
+ echo "Running single experiment..."
|
|
|
+ shift
|
|
|
+ run $*
|
|
|
+ exit
|
|
|
+fi
|
|
|
+
|
|
|
now=`date`
|
|
|
echo "$now: Starting experiments"
|
|
|
|
|
@@ -141,34 +155,34 @@ echo "$now: Experiments complete"
|
|
|
# outputs differently.
|
|
|
if [ "$LOGSUFFIX" == "" ]; then
|
|
|
|
|
|
-parse *.out > floram.dat
|
|
|
+parse *_${numops}.out > floram_${numops}.dat
|
|
|
|
|
|
echo
|
|
|
echo "# Figure 7(a)"
|
|
|
-egrep 'Floram readwrite .* 30ms 100mbit .* s$' floram.dat | sort -k3 -n
|
|
|
+egrep 'Floram readwrite .* 30ms 100mbit .* s$' floram_${numops}.dat | sort -k3 -n
|
|
|
echo
|
|
|
echo "# Figure 7(b)"
|
|
|
-egrep 'Floram readwrite 20 30ms .* s$' floram.dat | sort -k5 -n
|
|
|
+egrep 'Floram readwrite 20 30ms .* s$' floram_${numops}.dat | sort -k5 -n
|
|
|
echo
|
|
|
echo "# Figure 7(c)"
|
|
|
-egrep 'Floram readwrite 20 .* 100mbit .* s$' floram.dat | sort -k4 -n
|
|
|
+egrep 'Floram readwrite 20 .* 100mbit .* s$' floram_${numops}.dat | sort -k4 -n
|
|
|
echo
|
|
|
echo "# Figure 8(a)"
|
|
|
-egrep 'Floram read .* 1us 100gbit .* KiB$' floram.dat | sort -k3 -n
|
|
|
+egrep 'Floram read .* 1us 100gbit .* KiB$' floram_${numops}.dat | sort -k3 -n
|
|
|
echo
|
|
|
echo "# Figure 8(b)"
|
|
|
-egrep 'Floram write .* 1us 100gbit .* KiB$' floram.dat | sort -k3 -n
|
|
|
+egrep 'Floram write .* 1us 100gbit .* KiB$' floram_${numops}.dat | sort -k3 -n
|
|
|
echo
|
|
|
echo "# Figure 8(c)"
|
|
|
-egrep 'Floram readwrite .* 1us 100gbit .* KiB$' floram.dat | sort -k3 -n
|
|
|
+egrep 'Floram readwrite .* 1us 100gbit .* KiB$' floram_${numops}.dat | sort -k3 -n
|
|
|
echo
|
|
|
echo "# Figure 9(a)"
|
|
|
-egrep 'Floram read .* 30ms 100mbit .* s$' floram.dat | sort -k3 -n
|
|
|
+egrep 'Floram read .* 30ms 100mbit .* s$' floram_${numops}.dat | sort -k3 -n
|
|
|
echo
|
|
|
echo "# Figure 9(b)"
|
|
|
-egrep 'Floram read .* 1us 100gbit .* s$' floram.dat | sort -k3 -n
|
|
|
+egrep 'Floram read .* 1us 100gbit .* s$' floram_${numops}.dat | sort -k3 -n
|
|
|
echo
|
|
|
echo "# Figure 9(c)"
|
|
|
-egrep 'Floram read .* 1us 100gbit .* KiB$' floram.dat | sort -k3 -n
|
|
|
+egrep 'Floram read .* 1us 100gbit .* KiB$' floram_${numops}.dat | sort -k3 -n
|
|
|
|
|
|
fi
|