1
0
Fork 0
mirror of https://github.com/kubernetes-sigs/node-feature-discovery.git synced 2024-12-15 17:50:49 +00:00
node-feature-discovery/demo/helper-scripts/aggregate-logs-and-plot.sh
Markus Lehtonen 02d68ba491 demo: make demo runnable again
Fix workload template specs:
- update node affinity in "demo-pod-with-discovery.cloverleaf"
- fix broken "demo-pod-without-discovery"

Fix runner scripts to be runnable from anywhere gqYour current working
dir shouldn't matter. Also make the scripts exit on any error. Also
remove trailing whitespace.

Minor fixes in README.
2020-09-10 17:09:53 +03:00

71 lines
1.8 KiB
Bash
Executable file

#!/usr/bin/env bash
set -eo pipefail
this=`basename $0`
this_dir=`dirname $0`
show_help() {
cat << EOF
Usage: $this [-a APPLICATION_NAME]
Aggregate the results from the specified application and plot the result.
-a APPLICATION_NAME run the pods with APPLICATION_NAME application.
APPLICATION_NAME can be one of parsec or cloverleaf.
EOF
}
if [ $# -eq 0 ]
then
show_help
exit 1
fi
app="parsec"
OPTIND=1
options="ha:"
while getopts $options option
do
case $option in
a)
if [ "$OPTARG" == "parsec" ] || [ "$OPTARG" == "cloverleaf" ]
then
app=$OPTARG
else
echo "Invalid application name."
show_help
exit 0
fi
;;
h)
show_help
exit 0
;;
'?')
show_help
exit 1
;;
esac
done
for i in {1..10}
do
kubectl logs -f demo-$app-$i-wo-discovery | grep real | cut -f2 | sed -e "s/m/*60+/" -e "s/s//" | bc >> temp.log
done
paste <(cat labels-without-discovery-$app.log) <(cat temp.log) > performance.log
rm -f temp.log labels-without-discovery-$app.log
for i in {1..10}
do
kubectl logs -f demo-$app-$i-with-discovery | grep real | cut -f2 | sed -e "s/m/*60+/" -e "s/s//" | bc >> temp.log
done
paste <(cat labels-with-discovery-$app.log) <(cat temp.log) >> performance.log
rm -f temp.log labels-with-discovery-$app.log
minimum=$(awk 'min=="" || $2 < min {min=$2} END {print min}' performance.log)
awk -v min=$minimum '{print $1,((($2/min)*100))-100}' performance.log > performance-norm.log
"$this_dir/box-plot.R" performance.log performance-comparison-$app.pdf
"$this_dir/box-plot-norm.R" performance-norm.log performance-comparison-$app-norm.pdf
"$this_dir/clean-up.sh" -a $app