diff --git a/experiments/memcached.shared.sh b/experiments/memcached.shared.sh index e6cd0e5215865dbc66040a36dcecf144b115af07..592661b8112d0f2ef06efde2b8d1ceb0decf33f7 100644 --- a/experiments/memcached.shared.sh +++ b/experiments/memcached.shared.sh @@ -2,6 +2,8 @@ source "$EXP_ROOT/experiments/perf.shared.sh" CONNS=160 # per agent thread +NO_RUNS=0 + load_config() { source "$EXP_ROOT/configs/memcached.sh" source "$EXP_ROOT/configs/mutilate.sh" @@ -38,10 +40,17 @@ warmup() { } run_mutilate() { + if [ "$NO_RUNS" -ge 4 ]; then + echo "Re-intializing Memcached server" + memcached_shutdown + memcached_startup + NO_RUNS=0 + fi echo "Running mutilate with $CONNS connections per agent (core) and QPS = $QPS" perf_stat_start "$1" sudo -u $SSH_USER $MUTILATE --noload -c$CONNS $MUTCLIENTS -t30 -u 0 -q $QPS | tee $DATA_OUT/$1.txt perf_stat_stop + NO_RUNS=$((NO_RUNS + 1)) } memcached_pre_start() { @@ -59,13 +68,22 @@ memcached_pre_start() { } memcached_init() { + NO_RUNS=0 + memcached_startup +} + +memcached_startup() { start_memcached start_mutilate warmup } -memcached_deinit() { +memcached_shutdown() { cleanup_mutilate cleanup_memcached } +memcached_deinit() { + memcached_shutdown +} +