Update some benchmark-running scripts
[bluesky.git] / microbench / run2.sh
index a5297ac..aaab88f 100755 (executable)
@@ -1,11 +1,12 @@
 #!/bin/bash
 
-PARAMS="BLUESKY_CACHE_SIZE BLUESKY_TARGET BENCH_DURATION BENCH_FILESIZE BENCH_FILECOUNT BENCH_WRITERATIO BENCH_THREADS BENCH_OPS BENCH_INTERVALS BENCH_DIRSIZE"
+PARAMS="BLUESKY_RUN_NAME 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"
 
+BLUESKY_RUN_NAME=$(date +%Y%m%d)-$$
 BENCHER=c09-44.sysnet.ucsd.edu
 PROXY=c09-45.sysnet.ucsd.edu
 
-SSH_ARGS=""
+SSH_ARGS="-i $HOME/.ssh/id_bluesky"
 
 get_params() {
     for p in $PARAMS; do
@@ -22,43 +23,60 @@ run_cmd() {
     ssh $SSH_ARGS -l root $host /scratch/bluesky.git/microbench/setup/$cmd "$@" $(get_params)
 }
 
-BLUESKY_TARGET=s3
-BLUESKY_CACHE_SIZE=$((512 * 1024))
-BENCH_FILESIZE=$((1 << 20))
+BLUESKY_CACHE_SIZE=$((8 * 1024 * 1024))
+BENCH_FILESIZE=$((1024 * 1024))
+BENCH_BLOCKSIZE=0
 BENCH_FILECOUNT=$((62))
-BENCH_WRITERATIO=0.0
+BENCH_WRITERATIO=0.5
 BENCH_THREADS=4
 BENCH_DURATION=120
 BENCH_INTERVALS=10
-BENCH_DIRSIZE=256
+BENCH_DIRSIZE=128
+NFS_BLOCKSIZE=1048576
 
-#for size in 128 256 512 768 1024 1536 2048; do
-#    for filesize in 4 32 256 2048; do
-for size in 128 256 512 768 1024 1536 2048; do
-    for filesize in 4 1024; do
-        BENCH_FILESIZE=$(($filesize * 1024))
-        BENCH_FILECOUNT=$(($size * 1024 / $filesize / $BENCH_THREADS))
-        PREFIX=$BLUESKY_TARGET-$BENCH_WRITERATIO-${size}M-${filesize}k
-
-        $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=$!
+sizes="128 512 1024 2048 8192"
+ops_list="2000 1000 500 200 100 50 20 10"
+
+run_one() {
+    PREFIX=$1
+
+    $HOME/bin/s3-cleanup.py mvrable-bluesky
+    $HOME/bin/s3-cleanup.py mvrable-bluesky-west
+    run_cmd $PROXY cleanup-proxy
+    run_cmd $PROXY run-proxy >$PREFIX.proxy 2>&1 &
+    proxy_pid=$!
+    sleep 10
+    run_cmd $BENCHER prepare-benchmark
+
+    for BENCH_OPS in $ops_list; do
         sleep 10
-        run_cmd $BENCHER prepare-benchmark
-
-        #for BENCH_OPS in 2000 1500 1000 800 600 400 200 100 80 40 20 10; do
-        for BENCH_OPS in 2000 1000 500 200 100 50 20 10; 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
+        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
+    BENCH_FILECOUNT=$(($size * 1024 / ($BENCH_FILESIZE / 1024)))
+
+    BENCH_BLOCKSIZE=32768
+    run_one $BLUESKY_TARGET-$BENCH_WRITERATIO-${size}M-32k
+
+    BENCH_BLOCKSIZE=0
+    run_one $BLUESKY_TARGET-$BENCH_WRITERATIO-${size}M-1024k
+done
+}
+
+BLUESKY_TARGET=s3:mvrable-bluesky-west
+BENCH_THREADS=4
+
+for BENCH_WRITERATIO in 0.0 1.0 0.5; do
+    run_experiments
 done