parent
fdf75b4e8f
commit
11d1484701
@ -1,44 +1,19 @@
|
||||
[
|
||||
{
|
||||
"name": "Admin",
|
||||
"port": 55555,
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0,
|
||||
"reservation-percentile": 0,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/admin",
|
||||
"path": "fibonacci.wasm.so",
|
||||
"admissions-percentile": 50,
|
||||
"expected-execution-us": 1000,
|
||||
"relative-deadline-us": 10000,
|
||||
"http-resp-content-type": "text/plain"
|
||||
},
|
||||
{
|
||||
"route": "/terminator",
|
||||
"path": "fibonacci.wasm.so",
|
||||
"admissions-percentile": 50,
|
||||
"expected-execution-us": 1000,
|
||||
"relative-deadline-us": 10000,
|
||||
"http-resp-content-type": "text/plain"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "cmu-000",
|
||||
"port": 10000,
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0,
|
||||
"reservation-percentile": 0,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/depth_to_xyz",
|
||||
"path": "depth_to_xyz.wasm.so",
|
||||
"admissions-percentile": 60,
|
||||
"expected-execution-us": 950000,
|
||||
"relative-deadline-us": 4750000,
|
||||
"relative-deadline-us": 0,
|
||||
"http-resp-content-type": "image/png"
|
||||
}
|
||||
]
|
||||
],
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0,
|
||||
"reservation-percentile": 0
|
||||
}
|
||||
]
|
||||
|
@ -0,0 +1 @@
|
||||
out*
|
@ -0,0 +1,102 @@
|
||||
SLEDGE_BINARY_DIR=../../runtime/bin
|
||||
HOST?=localhost # pass arguments to change this: make client-lpd HOST=10.10.1.4
|
||||
# HOST=arena0.andrew.cmu.edu
|
||||
# HOST=c220g2-011017.wisc.cloudlab.us
|
||||
PORT0=10000
|
||||
PORT1=15000
|
||||
PORT2=20000
|
||||
PORT3=25000
|
||||
PORT4=30000
|
||||
PORT5=35000
|
||||
PORT6=40000
|
||||
HEY_OPTS=-disable-compression -disable-keepalive -disable-redirects
|
||||
|
||||
default: run
|
||||
|
||||
clean:
|
||||
rm -rf res/*
|
||||
|
||||
run:
|
||||
SLEDGE_SIGALRM_HANDLER=TRIAGED SLEDGE_SCHEDULER=MTDBF SLEDGE_SPINLOOP_PAUSE_ENABLED=true SLEDGE_HTTP_SESSION_PERF_LOG=http_perf.log SLEDGE_SANDBOX_PERF_LOG=perf.log LD_LIBRARY_PATH=${SLEDGE_BINARY_DIR} ${SLEDGE_BINARY_DIR}/sledgert spec.json
|
||||
|
||||
debug:
|
||||
SLEDGE_SCHEDULER=MTDBF SLEDGE_SPINLOOP_PAUSE_ENABLED=false SLEDGE_NWORKERS=18 LD_LIBRARY_PATH=${SLEDGE_BINARY_DIR} gdb ${SLEDGE_BINARY_DIR}/sledgert \
|
||||
--eval-command="handle SIGUSR1 noprint nostop" \
|
||||
--eval-command="handle SIGPIPE noprint nostop" \
|
||||
--eval-command="set pagination off" \
|
||||
--eval-command="set print pretty" \
|
||||
--eval-command="run spec.json"
|
||||
|
||||
valgrind:
|
||||
SLEDGE_DISABLE_PREEMPTION=true SLEDGE_NWORKERS=1 LD_LIBRARY_PATH=${SLEDGE_BINARY_DIR} valgrind --leak-check=full --max-stackframe=11150456 --run-libc-freeres=no --run-cxx-freeres=no ${SLEDGE_BINARY_DIR}/sledgert spec.json
|
||||
|
||||
|
||||
client-cnn:
|
||||
curl -H 'Expect: ' -H "Content-Type: image/jpeg" --data-binary "@input-cnn/faces01.jpg" "${HOST}:${PORT0}/cnn"
|
||||
|
||||
client-cifar10:
|
||||
curl -H 'Expect: ' -H "Content-Type: image/bmp" --data-binary "@input-cifar10/airplane1.bmp" "${HOST}:${PORT1}/cifar10"
|
||||
|
||||
client-gocr:
|
||||
curl -H 'Expect: ' -H "Content-Type: application/octet-stream" --data-binary "@input-gocr/5x8.pnm" "${HOST}:${PORT2}/gocr"
|
||||
|
||||
client-lpd:
|
||||
# curl -H 'Expect: ' -H "Content-Type: image/png" --data-binary "@input-lpd-png/Cars0.png" "${HOST}:${PORT3}/lpd"
|
||||
curl -H 'Expect: ' -H "Content-Type: image/jpeg" --data-binary "@input-lpd-jpg/Cars0.jpg" "${HOST}:${PORT3}/lpd"
|
||||
|
||||
client-resize:
|
||||
curl -H 'Expect: ' -H "Content-Type: image/jpeg" --data-binary "@input-resize/picsum_512x512_01.jpg" "${HOST}:${PORT4}/resize" --output "out-resize.jpg"
|
||||
|
||||
client-ekf:
|
||||
curl -H 'Expect: ' -H "Content-Type: application/octet-stream" --data-binary "@input-ekf/iter00.dat" "${HOST}:${PORT5}/ekf" --output "out-ekf-iter00.dat"
|
||||
|
||||
client-fib-curl:
|
||||
curl -i -H 'Expect: ' -H "Content-Type: text/plain" "${HOST}:${PORT6}/fib?30"
|
||||
|
||||
########################################## Choose a random file to send with curl: ##########################################
|
||||
client-cnn-random:
|
||||
@dir="input-cnn"; random_file="$$(ls $$dir | shuf -n 1)"; echo "Random file: $$random_file"; \
|
||||
curl -s -H 'Expect: ' -H "Content-Type: image/jpeg" --data-binary "@$$dir/$$random_file" "${HOST}:${PORT0}/cnn"
|
||||
|
||||
client-cifar10-random:
|
||||
@dir="input-cifar10"; random_file="$$(ls $$dir | shuf -n 1)"; echo "Random file: $$random_file"; \
|
||||
curl -s -H 'Expect: ' -H "Content-Type: image/bmp" --data-binary "@$$dir/$$random_file" "${HOST}:${PORT1}/cifar10"
|
||||
|
||||
client-gocr-random:
|
||||
@dir="input-gocr"; random_file="$$(ls $$dir | shuf -n 1)"; echo "Random file: $$random_file"; \
|
||||
curl -s -H 'Expect: ' -H "Content-Type: application/octet-stream" --data-binary "@$$dir/$$random_file" "${HOST}:${PORT2}/gocr"
|
||||
|
||||
client-lpd-random:
|
||||
# @dir="input-lpd-png"; random_file="$$(ls $$dir | shuf -n 1)"; echo "Random file: $$random_file"; \
|
||||
# curl -s -H 'Expect: ' -H "Content-Type: image/png" --data-binary "@$$dir/$$random_file" "${HOST}:${PORT3}/lpd"
|
||||
@dir="input-lpd-jpg"; random_file="$$(ls $$dir | shuf -n 1)"; echo "Random file: $$random_file"; \
|
||||
curl -s -H 'Expect: ' -H "Content-Type: image/jpeg" --data-binary "@$$dir/$$random_file" "${HOST}:${PORT3}/lpd"
|
||||
|
||||
client-resize-random:
|
||||
@dir="input-resize"; random_file="$$(ls $$dir | shuf -n 1)"; echo "Random file: $$random_file"; \
|
||||
curl -s -H 'Expect: ' -H "Content-Type: image/jpeg" --data-binary "@$$dir/$$random_file" "${HOST}:${PORT4}/resize" --output "out-resize-$$random_file"
|
||||
|
||||
client-ekf-random:
|
||||
@dir="input-ekf"; random_file="$$(ls $$dir | shuf -n 1)"; echo "Random file: $$random_file"; \
|
||||
curl -s -H 'Expect: ' -H "Content-Type: application/octet-stream" --data-binary "@$$dir/$$random_file" "${HOST}:${PORT5}/ekf" --output "out-ekf-$$random_file"
|
||||
#############################################################################################################################
|
||||
|
||||
client-fib-once:
|
||||
echo 30 | http ${HOST}:${PORT6}/fib
|
||||
# http ${HOST}:${PORT6}/fib?30
|
||||
|
||||
client-fib-loadtest:
|
||||
loadtest -n 10 -c 10 -P 30 "http://${HOST}:${PORT6}/fib"
|
||||
|
||||
client-fib-hey:
|
||||
hey ${HEY_OPTS} -z 10s -c 72 -t 0 -o csv -m POST -d "30\n" "http://${HOST}:${PORT6}/fib"
|
||||
|
||||
client-fib-wrk:
|
||||
wrk -t 1 -c 1 -d 5s -R 1 "http://${HOST}:${PORT6}/fib?30"
|
||||
|
||||
|
||||
client-admin:
|
||||
echo 5 | http ${HOST}:55555/admin
|
||||
|
||||
client-terminator:
|
||||
echo 5 | http ${HOST}:55555/terminator
|
@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
VARYING=(72 108 144)
|
||||
|
||||
for var in "${VARYING[@]}"; do
|
||||
mkdir -p "$var"dpi
|
||||
mkdir -p "$var"dpi-orig
|
||||
for ((i=5; i<=15; i++)); do
|
||||
shuf -n10 /usr/share/dict/american-english > "$var"dpi-orig/"$i"words.txt
|
||||
pango-view --dpi="$var" --font=mono -qo "$var"dpi-orig/"$var"dpi_"$i"words.png "$var"dpi-orig/"$i"words.txt
|
||||
pngtopnm "$var"dpi-orig/"$var"dpi_"$i"words.png > "$var"dpi/"$var"dpi_"$i"words.pnm
|
||||
done
|
||||
done
|
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 168 KiB |
Binary file not shown.
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 43 KiB |
@ -0,0 +1,79 @@
|
||||
reset
|
||||
|
||||
set term jpeg size 1000,500
|
||||
set output "latency.jpg"
|
||||
|
||||
#set xlabel "Reservation Utilization %"
|
||||
#set ylabel "Latency (us)"
|
||||
|
||||
set key left top
|
||||
|
||||
set xrange [-5:]
|
||||
set yrange [0:]
|
||||
|
||||
set style histogram columnstacked
|
||||
set key horizontal
|
||||
|
||||
set macros
|
||||
# Placement of the a,b,c,d labels in the graphs
|
||||
POS = "at graph 0.05,1.03 font ',10'"
|
||||
|
||||
# x- and ytics for each row resp. column
|
||||
NOXTICS = "unset xlabel"
|
||||
# XTICS = "set xlabel 'Load %'"
|
||||
XTICS = "set xlabel 'All Requests/sec'"
|
||||
NOYTICS = "unset ylabel"
|
||||
YTICS = "set ylabel 'Latency (us)'"
|
||||
|
||||
# Margins for each row resp. column
|
||||
TMARGIN = "set tmargin at screen 0.90; set bmargin at screen 0.55"
|
||||
BMARGIN = "set tmargin at screen 0.55; set bmargin at screen 0.20"
|
||||
LMARGIN = "set lmargin at screen 0.15; set rmargin at screen 0.55"
|
||||
RMARGIN = "set lmargin at screen 0.55; set rmargin at screen 0.95"
|
||||
|
||||
# plot \
|
||||
# for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:7 title 'Tenant '.t_id.' p99' w lp, \
|
||||
# for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:6 title 'Tenant '.t_id.' p90' w lp, \
|
||||
# for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:5 title 'Tenant '.t_id.' p50' w lp, \
|
||||
# for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:4 title 'Tenant '.t_id.' mean' w lp, \
|
||||
# for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:3 title 'Tenant '.t_id.' min' w lp
|
||||
|
||||
### Start multiplot (2x2 layout)
|
||||
set multiplot layout 2,2 rowsfirst
|
||||
# --- GRAPH a
|
||||
set label 1 'p99' @POS
|
||||
@NOXTICS; @YTICS
|
||||
#@TMARGIN; @LMARGIN
|
||||
plot for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:7 title t_id w lp
|
||||
# --- GRAPH b
|
||||
set label 1 'p90' @POS
|
||||
@NOXTICS; @NOYTICS
|
||||
#@TMARGIN; @RMARGIN
|
||||
plot for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:6 notitle w lp
|
||||
# --- GRAPH c
|
||||
set label 1 'p50' @POS
|
||||
@XTICS; @YTICS
|
||||
#@BMARGIN; @LMARGIN
|
||||
plot for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:5 notitle w lp
|
||||
# --- GRAPH d
|
||||
set label 1 'mean' @POS
|
||||
@XTICS; @NOYTICS
|
||||
#@BMARGIN; @RMARGIN
|
||||
plot for [t_id in tenant_ids] 'latency_'.t_id.'.dat' using 1:4 notitle w lp
|
||||
unset multiplot
|
||||
### End multiplot
|
||||
|
||||
# plot \
|
||||
# 'latency_A.dat' using 1:7 title 'A p99' lt 1 lc 1 w lp, \
|
||||
# 'latency_A.dat' using 1:6 title 'A p90' lt 2 lc 1 w lp, \
|
||||
# 'latency_A.dat' using 1:5 title 'A p50' lt 3 lc 1 w lp, \
|
||||
# 'latency_A.dat' using 1:4 title 'A mean' lt 4 lc 1 w lp, \
|
||||
# 'latency_A.dat' using 1:3 title 'A min' lt 5 lc 1 w lp,\
|
||||
# 'latency_B.dat' using 1:7 title 'B p99' lt 1 lc 2 w lp, \
|
||||
# 'latency_B.dat' using 1:6 title 'B p90' lt 2 lc 2 w lp, \
|
||||
# 'latency_B.dat' using 1:5 title 'B p50' lt 3 lc 2 w lp, \
|
||||
# 'latency_B.dat' using 1:4 title 'B mean' lt 4 lc 2 w lp, \
|
||||
# 'latency_B.dat' using 1:3 title 'B min' lt 5 lc 2 w lp
|
||||
|
||||
# 'latency_A.dat' using 1:8 title 'A p100' linetype 0 linecolor 1 with linespoints, \
|
||||
# 'latency_B.dat' using 1:8 title 'B p100' linetype 0 linecolor 2 with linespoints, \
|
@ -0,0 +1,74 @@
|
||||
#!/bin/bash
|
||||
|
||||
# shellcheck disable=SC1091,SC2034,SC2155
|
||||
source ../bash_libraries/multi_tenancy_base.sh || exit 1
|
||||
|
||||
# Configure SERVER parameters: (this is to skip the .env config file)
|
||||
export SLEDGE_SCHEDULER=SJF
|
||||
export SLEDGE_DISABLE_PREEMPTION=false
|
||||
export SLEDGE_SPINLOOP_PAUSE_ENABLED=false
|
||||
export SLEDGE_SANDBOX_PERF_LOG=perf.log
|
||||
export SLEDGE_HTTP_SESSION_PERF_LOG=http_perf.log
|
||||
export SLEDGE_NWORKERS=1
|
||||
# export SLEDGE_PROC_MHZ=2660
|
||||
|
||||
# To reduce post processing time, provide local-only meaningful metrics:
|
||||
# Comment it in order to use ALL the metrics!
|
||||
declare -a SANDBOX_METRICS=(total running_sys running_user)
|
||||
|
||||
# The global configs for the scripts
|
||||
declare -r ADMIN_ACCESS=false
|
||||
declare -r CLIENT_TERMINATE_SERVER=false
|
||||
declare -r DURATION_sec=60
|
||||
declare -r ESTIMATIONS_PERCENTILE=60
|
||||
declare -r NWORKERS=${SLEDGE_NWORKERS:-1}
|
||||
|
||||
# Tenant configs:
|
||||
declare -ar TENANT_IDS=("cnn" "cifar10" "gocr" "lpd" "resize" "ekf")
|
||||
declare -ar INIT_PORTS=(10000 15000 20000 25000 30000 35000)
|
||||
declare -ar ROUTES=("cnn" "cifar10" "gocr" "lpd" "resize" "ekf")
|
||||
|
||||
declare -r NONE="0"
|
||||
declare -r GET_JPEG_RESOLUTION="get_jpeg_resolution.wasm.so"
|
||||
|
||||
# Per route configs:
|
||||
declare -ar WASM_PATHS=("$CNN" "$CIFAR10" "$GOCR" "$LPD" "$RESIZE" "$EKF")
|
||||
declare -ar WASM_PATHS_PREPROCESSING=("$GET_JPEG_RESOLUTION" "$GET_JPEG_RESOLUTION" "$GET_JPEG_RESOLUTION" "$GET_JPEG_RESOLUTION" "$NONE")
|
||||
declare -ar RESP_CONTENT_TYPES=("text/plain" "text/plain" "text/plain" "text/plain" "image/jpeg" "application/octet-stream")
|
||||
declare -ar EXPECTED_EXEC_TIMES_us=("600000" "4000" "8900" "16700" "62000" "30")
|
||||
declare -ar DEADLINE_TO_EXEC_RATIOs=("500" "500" "500" "500" "500" "5000") # percentage
|
||||
|
||||
# Regressions Model input:
|
||||
declare -ar PREPROCESS_WASM_PATHS=("$GET_JPEG_RESOLUTION" "$NONE" "$NONE" "$GET_JPEG_RESOLUTION" "$GET_JPEG_RESOLUTION" "$NONE")
|
||||
declare -ar MODEL_BIASES=("1500" "2000" "2500" "3000" "3500" "100")
|
||||
declare -ar MODEL_SCALES=("1500" "2000" "2500" "3000" "3500" "100")
|
||||
declare -ar MODEL_NUM_OF_PARAMS=("2" "1" "1" "2" "2" "1")
|
||||
declare -ar MODEL_BETA1S=("1500" "2000" "2500" "3000" "3500" "100")
|
||||
declare -ar MODEL_BETA2S=("1500" "0" "0" "3000" "3500" "0")
|
||||
|
||||
# This is needed if you want loadtest to time out for requests that miss their deadlines (timeout = deadline):
|
||||
declare -gr LOADTEST_REQUEST_TIMEOUT=false
|
||||
|
||||
# For HEY -d is text, -D is file input. For LoadTest -P is text, -b is file input.
|
||||
# ALso, LoadTest now supports -B for random file in the folder. HEY supports a single file.
|
||||
declare -ar ARG_OPTS_HEY=("-D" "-D" "-D" "-D" "-D")
|
||||
declare -ar ARG_OPTS_LT=("-B" "-B" "-B" "-B" "-B") # "-P -P -P")
|
||||
declare -ar ARGS=("input-cnn" "input-cifar10" "input-gocr" "input-lpd-jpg" "input-resize" "input-ekf")
|
||||
# declare -ar ARGS=("input-cnn/faces01.jpg" "input-cifar10/airplane1.bmp" "input-gocr/5x8.pnm" "input-lpd-jpg/Cars0.jpg" "input-resize/picsum_512x512_01.jpg" "input-ekf/iter00.dat")
|
||||
|
||||
# This is needed if you want loadtest to log the randomly chosen filenames
|
||||
declare -gr LOADTEST_LOG_RANDOM=false
|
||||
|
||||
# 100=FULL load, 50=HALF load ...
|
||||
declare -ar LOADS=(20 20 25 10 25 1)
|
||||
|
||||
# When trying varying values, you must set ONE value from the above params to ? (question mark)
|
||||
# For example, for varying the loads, try: LOADS=("50 ?" "100")
|
||||
declare -ar VARYING=(0) # no variation, single experiment
|
||||
|
||||
# Add the word "nuclio" to the end of the client execution command to run for Nuclio mode (stick to the same port and use keep-alive)
|
||||
[[ "${!#}" = "nuclio" || "${!#}" = "Nuclio" ]] && NUCLIO_MODE_ENABLED=true
|
||||
|
||||
run_init
|
||||
generate_spec_json
|
||||
framework_init "$@"
|
@ -0,0 +1,128 @@
|
||||
[
|
||||
{
|
||||
"name": "cifar10-000",
|
||||
"port": 15000,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/cifar10",
|
||||
"path": "cifar10.wasm.so",
|
||||
"admissions-percentile": 60,
|
||||
"relative-deadline-us": 20000,
|
||||
"http-resp-content-type": "text/plain",
|
||||
"path_preprocess": "0",
|
||||
"model-bias": 2000,
|
||||
"model-scale": 2000,
|
||||
"model-num-of-param": 1,
|
||||
"model-beta1": 2000,
|
||||
"model-beta2": 0
|
||||
}
|
||||
],
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0
|
||||
},
|
||||
{
|
||||
"name": "cnn-000",
|
||||
"port": 10000,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/cnn",
|
||||
"path": "cnn_face_detection.wasm.so",
|
||||
"admissions-percentile": 60,
|
||||
"relative-deadline-us": 3000000,
|
||||
"http-resp-content-type": "text/plain",
|
||||
"path_preprocess": "get_jpeg_resolution.wasm.so",
|
||||
"model-bias": 1500,
|
||||
"model-scale": 1500,
|
||||
"model-num-of-param": 2,
|
||||
"model-beta1": 1500,
|
||||
"model-beta2": 1500
|
||||
}
|
||||
],
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0
|
||||
},
|
||||
{
|
||||
"name": "ekf-000",
|
||||
"port": 35000,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/ekf",
|
||||
"path": "gps_ekf.wasm.so",
|
||||
"admissions-percentile": 60,
|
||||
"relative-deadline-us": 1500,
|
||||
"http-resp-content-type": "application/octet-stream",
|
||||
"path_preprocess": "0",
|
||||
"model-bias": 100,
|
||||
"model-scale": 100,
|
||||
"model-num-of-param": 1,
|
||||
"model-beta1": 100,
|
||||
"model-beta2": 0
|
||||
}
|
||||
],
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0
|
||||
},
|
||||
{
|
||||
"name": "gocr-000",
|
||||
"port": 20000,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/gocr",
|
||||
"path": "gocr.wasm.so",
|
||||
"admissions-percentile": 60,
|
||||
"relative-deadline-us": 44500,
|
||||
"http-resp-content-type": "text/plain",
|
||||
"path_preprocess": "0",
|
||||
"model-bias": 2500,
|
||||
"model-scale": 2500,
|
||||
"model-num-of-param": 1,
|
||||
"model-beta1": 2500,
|
||||
"model-beta2": 0
|
||||
}
|
||||
],
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0
|
||||
},
|
||||
{
|
||||
"name": "lpd-000",
|
||||
"port": 25000,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/lpd",
|
||||
"path": "license_plate_detection.wasm.so",
|
||||
"admissions-percentile": 60,
|
||||
"relative-deadline-us": 83500,
|
||||
"http-resp-content-type": "text/plain",
|
||||
"path_preprocess": "get_jpeg_resolution.wasm.so",
|
||||
"model-bias": 3000,
|
||||
"model-scale": 3000,
|
||||
"model-num-of-param": 2,
|
||||
"model-beta1": 3000,
|
||||
"model-beta2": 3000
|
||||
}
|
||||
],
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0
|
||||
},
|
||||
{
|
||||
"name": "resize-000",
|
||||
"port": 30000,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/resize",
|
||||
"path": "resize_image.wasm.so",
|
||||
"admissions-percentile": 60,
|
||||
"relative-deadline-us": 310000,
|
||||
"http-resp-content-type": "image/jpeg",
|
||||
"path_preprocess": "get_jpeg_resolution.wasm.so",
|
||||
"model-bias": 3500,
|
||||
"model-scale": 3500,
|
||||
"model-num-of-param": 2,
|
||||
"model-beta1": 3500,
|
||||
"model-beta2": 3500
|
||||
}
|
||||
],
|
||||
"replenishment-period-us": 0,
|
||||
"max-budget-us": 0
|
||||
}
|
||||
]
|
@ -0,0 +1,17 @@
|
||||
reset
|
||||
|
||||
set term jpeg
|
||||
set output "success.jpg"
|
||||
|
||||
#set xlabel "Reservation Utilization %"
|
||||
#set xlabel "Load %"
|
||||
set xlabel "Requests/sec"
|
||||
set ylabel "Deadline success rate %"
|
||||
|
||||
set xrange [-5:]
|
||||
set yrange [0:110]
|
||||
|
||||
plot for [t_id in tenant_ids] 'success_'.t_id.'.dat' using 1:2 title t_id w lp
|
||||
|
||||
#plot 'success_A.dat' using 1:2 title 'Tenant A success rate' linetype 1 linecolor 1 with linespoints,\
|
||||
# 'success_B.dat' using 1:2 title 'Tenant B success rate' lt 2 lc 2 w lp
|
@ -0,0 +1,13 @@
|
||||
{
|
||||
"name": "tenant",
|
||||
"port": 0,
|
||||
"routes": [
|
||||
{
|
||||
"route": "/route",
|
||||
"path": "fibonacci.wasm.so",
|
||||
"admissions-percentile": 60,
|
||||
"relative-deadline-us": 5000,
|
||||
"http-resp-content-type": "text/plain"
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
reset
|
||||
|
||||
set term jpeg
|
||||
set output "throughput.jpg"
|
||||
|
||||
#set xlabel "Reservation Utilization %"
|
||||
#set xlabel "Load %"
|
||||
set xlabel "All Requests/sec"
|
||||
set ylabel "Successful Requests/sec"
|
||||
|
||||
set xrange [0:]
|
||||
set yrange [0:]
|
||||
|
||||
plot for [t_id in tenant_ids] 'throughput_'.t_id.'.dat' using 1:2 title t_id w lp
|
||||
|
||||
#plot 'throughput_A.dat' using 1:2 title 'Tenant A Throughput' linetype 1 linecolor 1 with linespoints,\
|
||||
# 'throughput_B.dat' using 1:2 title 'Tenant B Throughput' linetype 2 linecolor 2 with linespoints
|
Loading…
Reference in new issue