add some contrib scripts

This commit is contained in:
Norwin 2022-01-02 06:18:25 +01:00
parent 4e0cc35c26
commit a27f4fc4c9
3 changed files with 48 additions and 29 deletions

16
contrib/pixelvnc.sh Executable file
View File

@ -0,0 +1,16 @@
#!/bin/bash
# run vnc viewer in fullscreen on the selected monitor.
# restarts it on connectivity issues, press ctrl-c TWICE to quit.
#
# usage: pixelvnc.sh [<host>[:<port>] [monitor-index]]
# depends on: tigervnc
host=${1:=vnc.schenklklopfer.de}
screen=${2:=1}
while :; do
vncviewer ReconnectOnError=0 ViewOnly=1 FullScreen=1 FullScreenMode=Selected FullScreenSelectedMonitors=$screen $host
sleep 1 # give room to ^C out of the loop
done

32
contrib/setup_bbr.sh Executable file
View File

@ -0,0 +1,32 @@
#!/bin/sh
# sets up BBR congestion control (https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=0f8782ea14974ce992618b55f0c041ef43ed0b78)
# for the given interface
DEV=${$1:=eth0}
MODE=${$2:="temporary"}
echo pre-run state:
echo `sysctl net.ipv4.tcp_congestion_control`
echo qdisc on $DEV: `tc qdisc show dev $DEV`
# set required "fair queueing" queuing discipline (man tc-fq)
echo "qdisc on $DEV was: `tc qdisc show dev $DEV`"
tc qdisc replace dev $DEV root fq
echo "qdisc on $DEV now is: `tc qdisc show dev $DEV`"
# (permanently) configure BBR
if [[ mode == "temporary" ]]; then
echo -e 'net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr' | sysctl -p-
elif [[ mode == "permanent"]]; then
echo -e 'net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr' >> /etc/sysctl.d/20-net-bbr.conf
sysctl -p /etc/sysctl.d/20-net-bbr.conf
algo=`sysctl net.ipv4.tcp_congestion_control`
if [[ "$algo" != 'net.ipv4.tcp_congestion_control = bbr' ]]; then
echo "couldn't apply changes at runtime, you should reboot."
fi
else
echo "unknown mode, congestion control algo unchanged"
fi

View File

@ -1,29 +0,0 @@
#!/bin/bash
# runs two instances of hochwasser (rpc server & client each) against a fake (iperf)
# pixelflut server for a few seconds, and opens pprof afterwar
runtime=${1:-"2s"}
function cleanup {
kill ${pids[@]} > /dev/null 2>&1
}
trap cleanup EXIT
wd=$(dirname "$0")
pids=()
iperf -p 1337 -s > /dev/null 2>&1 &
pids+=($!)
go run . -image $wd/../benchmarks/black_small.png -rán :1234 &
pids+=($!)
sleep 0.2
go run . -image $wd/../benchmarks/white_small.png -hevring :1234 -runtime "$runtime" -cpuprofile hevring.prof
pids+=($!)
cleanup
go tool pprof -http :8080 Hochwasser hevring.prof
#go tool pprof -http :8081 Hochwasser ran.prof