diff --git a/scripts/profile/full-table.sh b/scripts/profile/full-table.sh index 930e297..e2b1935 100755 --- a/scripts/profile/full-table.sh +++ b/scripts/profile/full-table.sh @@ -78,14 +78,27 @@ peer ping -c 1 -W 2 192.0.2.254 > /dev/null || fail "the namespaces do not reach # An AS number that is in none of the synthetic paths: a route with the # daemon's own AS in its path is refused as a loop. +prefixes=$(( 1000000 / scale + 230000 / scale )) +routes=$(( prefixes * peers )) cat > "$out/daemon.textpb" <> "$out/daemon.textpb" <> "$out/daemon.textpb" fi @@ -100,9 +113,6 @@ status() { run curl -sf "http://127.0.0.1:8080/api/$1" | jq -r "$2"; } now() { date +%s.%N; } since() { echo "$(now) - $1" | bc; } -prefixes=$(( 1000000 / scale + 230000 / scale )) -routes=$(( prefixes * peers )) - sudo perf record -F "$freq" -g -o "$out/perf.data" -p "$daemon_pid" > "$out/perf.log" 2>&1 & perf_pid=$! sleep 1 @@ -136,6 +146,7 @@ if [ "$kernel" = 1 ]; then fi rss=$(awk '/VmRSS/ { printf "%.0f", $2 / 1024 }' "/proc/$daemon_pid/status") echo "daemon: $rss MiB resident with the table in" +run curl -sf http://127.0.0.1:8080/metrics | grep '^bgp_kernel_route_changes_total' | sed 's/^/kernel: /' sleep 1 sudo kill -INT "$perf_pid" wait "$perf_pid" || true