Merge git+ssh://c09-45.sysnet.ucsd.edu/scratch/bluesky
[bluesky.git] / microbench / run2.sh
index 24f4348..b0928da 100755 (executable)
@@ -1,10 +1,12 @@
 #!/bin/bash
 
-PARAMS="BLUESKY_CACHE_SIZE BLUESKY_TARGET BENCH_DURATION BENCH_FILESIZE BENCH_FILECOUNT BENCH_WRITERATIO BENCH_THREADS BENCH_OPS BENCH_INTERVALS"
+PARAMS="BLUESKY_CACHE_SIZE BLUESKY_TARGET BENCH_DURATION BENCH_FILESIZE BENCH_FILECOUNT BENCH_WRITERATIO BENCH_THREADS BENCH_OPS BENCH_INTERVALS BENCH_DIRSIZE BENCH_BLOCKSIZE NFS_BLOCKSIZE"
 
 BENCHER=c09-44.sysnet.ucsd.edu
 PROXY=c09-45.sysnet.ucsd.edu
 
+SSH_ARGS=""
+
 get_params() {
     for p in $PARAMS; do
         if [ -n "${!p}" ]; then
@@ -17,27 +19,74 @@ run_cmd() {
     host="$1"; shift
     cmd="$1"; shift
     echo "EXECUTE($host):" "$cmd" "$@" 1>&2
-    ssh -l root $host /scratch/bluesky.git/microbench/setup/$cmd "$@" $(get_params)
+    ssh $SSH_ARGS -l root $host /scratch/bluesky.git/microbench/setup/$cmd "$@" $(get_params)
 }
 
-for size in 512; do
-    BENCH_DURATION=20
-    BENCH_WRITERATIO=0.0
-    BLUESKY_TARGET=s3
-    BLUESKY_CACHE_SIZE=$(($size * 1024))
+BLUESKY_CACHE_SIZE=$((512 * 1024))
+BENCH_FILESIZE=$((1024 << 10))
+BENCH_BLOCKSIZE=0
+BENCH_FILECOUNT=$((62))
+BENCH_WRITERATIO=0.5
+BENCH_THREADS=4
+BENCH_DURATION=120
+BENCH_INTERVALS=10
+BENCH_DIRSIZE=128
+NFS_BLOCKSIZE=1048576
 
-    PREFIX=$BLUESKY_TARGET-$BENCH_WRITERATIO
+sizes="128 512 1024 2048"
+ops_list="2000 1000 500 200 100 50 20 10"
 
-    echo "SETTINGS:" $(get_params)
-    get_params >$PREFIX.settings
+run_one() {
+    PREFIX=$1
 
+    $HOME/bin/s3-cleanup.py
+    SSH_ARGS="-t"
     run_cmd $PROXY cleanup-proxy
+    SSH_ARGS=""
     run_cmd $PROXY run-proxy >$PREFIX.proxy 2>&1 &
     proxy_pid=$!
     sleep 10
     run_cmd $BENCHER prepare-benchmark
-    run_cmd $BENCHER run-benchmark | tee $PREFIX.results
+
+    for BENCH_OPS in $ops_list; do
+        sleep 10
+        echo "SETTINGS:" $(get_params)
+        get_params >$PREFIX-$BENCH_OPS.settings
+        run_cmd $BENCHER run-benchmark | tee $PREFIX-$BENCH_OPS.results
+    done
+
     run_cmd $PROXY stop-proxy
     echo "Waiting for proxy to stop..."
     wait $proxy_pid
+}
+
+#for size in 128 256 512 768 1024 1536 2048; do
+#    for filesize in 4 32 256 2048; do
+run_experiments() {
+for size in $sizes; do
+    for filesize in 4 32; do
+        BENCH_BLOCKSIZE=$(($filesize * 1024))
+        BENCH_FILECOUNT=$(($size * 1024 / ($BENCH_FILESIZE / 1024)))
+        PREFIX=$BLUESKY_TARGET-$BENCH_WRITERATIO-${size}M-${filesize}k
+
+        run_one $PREFIX
+    done
 done
+}
+
+BLUESKY_TARGET=s3
+BENCH_FILESIZE=1048576
+BENCH_FILECOUNT=1024
+BENCH_WRITERATIO=0.0
+BENCH_THREADS=4
+run_one repeat-1024M-1024k
+
+#for BENCH_WRITERATIO in 0.0 1.0 0.5; do
+#    BLUESKY_TARGET=s3
+#    sizes="128 512 1024 2048"
+#    run_experiments
+#
+#    BLUESKY_TARGET=native
+#    sizes=128
+#    run_experiments
+#done