Commit c7e88eb1 authored by Florian Fischer's avatar Florian Fischer
Browse files

add line plots, exclude non waitfree notifications, add stealing and completer plots

parent c76d4f70
Pipeline #82989 passed with stage
in 1 minute and 12 seconds
...@@ -25,10 +25,11 @@ DATA="$(realpath "${DATA}")" ...@@ -25,10 +25,11 @@ DATA="$(realpath "${DATA}")"
LATENCY_DATA="${DATA}/latency" LATENCY_DATA="${DATA}/latency"
THROUGHPUT_DATA="${DATA}/throughput" THROUGHPUT_DATA="${DATA}/throughput"
COMMON_EXCLUDE="-ix *lockless*" COMMON_EXCLUDE="-ix *lockless* *io-notification-waitfd*"
PLOT="${SCRIPTDIR}/plot.py ${COMMON_EXCLUDE}" PLOT="${SCRIPTDIR}/plot.py ${COMMON_EXCLUDE}"
LATENCY_PLOT="${SCRIPTDIR}/plot_tail_latency.py --plot bar-tikz --" LATENCY_PLOT="${SCRIPTDIR}/plot_tail_latency.py --plot bar-tikz --"
LATENCY_LINE_PLOT="${SCRIPTDIR}/plot_tail_latency.py --plot line"
LATENCIES="latencies.2.csv" LATENCIES="latencies.2.csv"
COMP="0us-100ms-0.5" COMP="0us-100ms-0.5"
...@@ -51,11 +52,16 @@ plot_throughput() { ...@@ -51,11 +52,16 @@ plot_throughput() {
${PLOT} -o ma-waitfd.tex -i emper-vanilla '*waitfd*' ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA" ${PLOT} -o ma-waitfd.tex -i emper-vanilla '*waitfd*' ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-waitfd-delay.tex -i emper-vanilla-${COMP} '*waitfd*'-${COMP} -- "$THROUGHPUT_DATA" ${PLOT} -o ma-waitfd-delay.tex -i emper-vanilla-${COMP} '*waitfd*'-${COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-completer.tex -i emper-{waitfd,pipe}{,-no-comp} ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-vanilla-stealing.tex -i emper-vanilla emper-waitfd emper-io-stealing ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-io-strategies-stealing.tex -i emper-io-stealing-{waitfd,pipe}* emper-{waitfd,pipe} ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-stealing.tex -i emper-vanilla '*io-stealing*' ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA" ${PLOT} -o ma-stealing.tex -i emper-vanilla '*io-stealing*' ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-stealing-delay.tex -i emper-{vanilla,*stealing}*-${COMP} -- "$THROUGHPUT_DATA" ${PLOT} -o ma-stealing-delay.tex -i emper-{vanilla,*stealing}*-${COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-notification.tex -i emper-vanilla '*notification*' ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA" ${PLOT} -o ma-notification.tex -i emper-{vanilla,waitfd} '*notification*' ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-notification-delay.tex -i emper-vanilla-${COMP} '*notification*'-${COMP} -- "$THROUGHPUT_DATA" ${PLOT} -o ma-notification-delay.tex -i emper-{vanilla,waitfd}-${COMP} '*notification*'-${COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-base-strategies.tex -i emper-{vanilla,simple-arch*,pipe,waitfd} ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA" ${PLOT} -o ma-base-strategies.tex -i emper-{vanilla,simple-arch*,pipe,waitfd} ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA"
${PLOT} -o ma-strategies.tex -i emper-vanilla '*pipe*' '*waitfd*' ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA" ${PLOT} -o ma-strategies.tex -i emper-vanilla '*pipe*' '*waitfd*' ${EXCLUDE_COMP} -- "$THROUGHPUT_DATA"
...@@ -75,12 +81,26 @@ plot_throughput() { ...@@ -75,12 +81,26 @@ plot_throughput() {
plot_latency() { plot_latency() {
echo "generating latency plots ..." echo "generating latency plots ..."
${LATENCY_PLOT} ${LATENCY_DATA}/{emper-vanilla,go,tokio}-200us/$LATENCIES > ma-runtime-latency.tex ${LATENCY_PLOT} ${LATENCY_DATA}/{emper-vanilla,go,tokio}-200us/$LATENCIES > ma-runtime-latency.tex
${LATENCY_PLOT} ${LATENCY_DATA}/{emper-vanilla,emper-waitfd,go,tokio}-200us/$LATENCIES > ma-comparision-latency.tex ${LATENCY_PLOT} ${LATENCY_DATA}/{emper-vanilla,emper-io-notification-waitfree-no-comp,go,tokio}-200us/$LATENCIES > ma-comparision-latency.tex
${LATENCY_PLOT} ${LATENCY_DATA}/emper-{waitfd,pipe,vanilla}-${COMP}/$LATENCIES > ma-strategy-latency.tex ${LATENCY_PLOT} ${LATENCY_DATA}/emper-{waitfd,pipe,vanilla}-${COMP}/$LATENCIES > ma-strategy-latency.tex
${LATENCY_PLOT} ${LATENCY_DATA}/emper-{pipe*,vanilla}-${COMP}/$LATENCIES > ma-pipe-latency.tex ${LATENCY_PLOT} ${LATENCY_DATA}/emper-{pipe*,vanilla}-${COMP}/$LATENCIES > ma-pipe-latency.tex
${LATENCY_PLOT} ${LATENCY_DATA}/emper-{waitfd*,io-notification*,vanilla}-${COMP}/$LATENCIES > ma-waitfd-latency.tex ${LATENCY_PLOT} ${LATENCY_DATA}/emper-{waitfd*,io-notification*,vanilla}-${COMP}/$LATENCIES > ma-waitfd-latency.tex
${LATENCY_PLOT} ${LATENCY_DATA}/emper-{waitfd,pipe}{,-no-comp}-${COMP}/$LATENCIES > ma-completer-latency.tex
${LATENCY_PLOT} ${LATENCY_DATA}/emper-{io-stealing*,pipe,waitfd}-${COMP}/$LATENCIES > ma-stealing-latency.tex
${LATENCY_LINE_PLOT} --out ma-runtime-latency.png -- ${LATENCY_DATA}/{emper-vanilla,go,tokio}-200us/$LATENCIES
${LATENCY_LINE_PLOT} --out ma-comparision-latency.png -- ${LATENCY_DATA}/{emper-vanilla,emper-io-notification-waitfree-no-comp,go,tokio}-200us/$LATENCIES
${LATENCY_LINE_PLOT} --out ma-strategy-latency.png -- ${LATENCY_DATA}/emper-{waitfd,pipe,vanilla}-${COMP}/$LATENCIES
${LATENCY_LINE_PLOT} --out ma-pipe-latency.png -- ${LATENCY_DATA}/emper-{pipe*,vanilla}-${COMP}/$LATENCIES
${LATENCY_LINE_PLOT} --out ma-waitfd-latency.png -- ${LATENCY_DATA}/emper-{waitfd*,io-notification*,vanilla}-${COMP}/$LATENCIES
${LATENCY_LINE_PLOT} --out ma-completer-latency.png -- ${LATENCY_DATA}/emper-{waitfd,pipe}{,-no-comp}-${COMP}/$LATENCIES
${LATENCY_LINE_PLOT} --out ma-stealing-latency.png -- ${LATENCY_DATA}/emper-{io-stealing*,pipe,waitfd}-${COMP}/$LATENCIES
} }
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment