#!/bin/bash
-PARAMS="BLUESKY_CACHE_SIZE BLUESKY_TARGET BENCH_DURATION BENCH_FILESIZE BENCH_FILECOUNT BENCH_WRITERATIO BENCH_THREADS BENCH_OPS"
+BASEDIR=$(dirname $(which $0))
+. $BASEDIR/run-common.sh
-BENCHER=c09-44.sysnet.ucsd.edu
-PROXY=c09-45.sysnet.ucsd.edu
+sizes="128 512 1024 2048 8192"
+ops_list="2000 1000 500 200 100 50 20 10"
-get_params() {
- for p in $PARAMS; do
- if [ -n "${!p}" ]; then
- echo "$p=${!p}"
- fi
- done
-}
-
-run_cmd() {
- host="$1"; shift
- cmd="$1"; shift
- echo "EXECUTE($host):" "$cmd" "$@"
- ssh -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))
-
- PREFIX=$BLUESKY_TARGET-$BENCH_WRITERATIO
-
- echo "SETTINGS:" $(get_params)
- get_params >$PREFIX.settings
+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 run-benchmark | tee $PREFIX.results
+ run_cmd $BENCHER prepare-benchmark
+
+ 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
+ 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