157fd1c63SJoanne Koong#!/bin/bash 257fd1c63SJoanne Koong# SPDX-License-Identifier: GPL-2.0 357fd1c63SJoanne Koong 457fd1c63SJoanne KoongRUN_BENCH="sudo ./bench -w3 -d10 -a" 557fd1c63SJoanne Koong 657fd1c63SJoanne Koongfunction header() 757fd1c63SJoanne Koong{ 857fd1c63SJoanne Koong local len=${#1} 957fd1c63SJoanne Koong 1057fd1c63SJoanne Koong printf "\n%s\n" "$1" 1157fd1c63SJoanne Koong for i in $(seq 1 $len); do printf '='; done 1257fd1c63SJoanne Koong printf '\n' 1357fd1c63SJoanne Koong} 1457fd1c63SJoanne Koong 1557fd1c63SJoanne Koongfunction subtitle() 1657fd1c63SJoanne Koong{ 1757fd1c63SJoanne Koong local len=${#1} 1857fd1c63SJoanne Koong printf "\t%s\n" "$1" 1957fd1c63SJoanne Koong} 2057fd1c63SJoanne Koong 2157fd1c63SJoanne Koongfunction hits() 2257fd1c63SJoanne Koong{ 2357fd1c63SJoanne Koong echo "$*" | sed -E "s/.*hits\s+([0-9]+\.[0-9]+ ± [0-9]+\.[0-9]+M\/s).*/\1/" 2457fd1c63SJoanne Koong} 2557fd1c63SJoanne Koong 2657fd1c63SJoanne Koongfunction drops() 2757fd1c63SJoanne Koong{ 2857fd1c63SJoanne Koong echo "$*" | sed -E "s/.*drops\s+([0-9]+\.[0-9]+ ± [0-9]+\.[0-9]+M\/s).*/\1/" 2957fd1c63SJoanne Koong} 3057fd1c63SJoanne Koong 3157fd1c63SJoanne Koongfunction percentage() 3257fd1c63SJoanne Koong{ 3357fd1c63SJoanne Koong echo "$*" | sed -E "s/.*Percentage\s=\s+([0-9]+\.[0-9]+).*/\1/" 3457fd1c63SJoanne Koong} 3557fd1c63SJoanne Koong 36ec151037SJoanne Koongfunction ops() 37ec151037SJoanne Koong{ 38ec151037SJoanne Koong echo -n "throughput: " 39ec151037SJoanne Koong echo -n "$*" | sed -E "s/.*throughput\s+([0-9]+\.[0-9]+ ± [0-9]+\.[0-9]+\sM\sops\/s).*/\1/" 40ec151037SJoanne Koong echo -n -e ", latency: " 41ec151037SJoanne Koong echo "$*" | sed -E "s/.*latency\s+([0-9]+\.[0-9]+\sns\/op).*/\1/" 42ec151037SJoanne Koong} 43ec151037SJoanne Koong 44*73087489SDave Marchevskyfunction local_storage() 45*73087489SDave Marchevsky{ 46*73087489SDave Marchevsky echo -n "hits throughput: " 47*73087489SDave Marchevsky echo -n "$*" | sed -E "s/.* hits throughput\s+([0-9]+\.[0-9]+ ± [0-9]+\.[0-9]+\sM\sops\/s).*/\1/" 48*73087489SDave Marchevsky echo -n -e ", hits latency: " 49*73087489SDave Marchevsky echo -n "$*" | sed -E "s/.* hits latency\s+([0-9]+\.[0-9]+\sns\/op).*/\1/" 50*73087489SDave Marchevsky echo -n ", important_hits throughput: " 51*73087489SDave Marchevsky echo "$*" | sed -E "s/.*important_hits throughput\s+([0-9]+\.[0-9]+ ± [0-9]+\.[0-9]+\sM\sops\/s).*/\1/" 52*73087489SDave Marchevsky} 53*73087489SDave Marchevsky 54f44bc543SJoanne Koongfunction total() 55f44bc543SJoanne Koong{ 56f44bc543SJoanne Koong echo "$*" | sed -E "s/.*total operations\s+([0-9]+\.[0-9]+ ± [0-9]+\.[0-9]+M\/s).*/\1/" 57f44bc543SJoanne Koong} 58f44bc543SJoanne Koong 5957fd1c63SJoanne Koongfunction summarize() 6057fd1c63SJoanne Koong{ 6157fd1c63SJoanne Koong bench="$1" 6257fd1c63SJoanne Koong summary=$(echo $2 | tail -n1) 6357fd1c63SJoanne Koong printf "%-20s %s (drops %s)\n" "$bench" "$(hits $summary)" "$(drops $summary)" 6457fd1c63SJoanne Koong} 6557fd1c63SJoanne Koong 6657fd1c63SJoanne Koongfunction summarize_percentage() 6757fd1c63SJoanne Koong{ 6857fd1c63SJoanne Koong bench="$1" 6957fd1c63SJoanne Koong summary=$(echo $2 | tail -n1) 7057fd1c63SJoanne Koong printf "%-20s %s%%\n" "$bench" "$(percentage $summary)" 7157fd1c63SJoanne Koong} 72f44bc543SJoanne Koong 73ec151037SJoanne Koongfunction summarize_ops() 74ec151037SJoanne Koong{ 75ec151037SJoanne Koong bench="$1" 76ec151037SJoanne Koong summary=$(echo $2 | tail -n1) 77ec151037SJoanne Koong printf "%-20s %s\n" "$bench" "$(ops $summary)" 78ec151037SJoanne Koong} 79ec151037SJoanne Koong 80*73087489SDave Marchevskyfunction summarize_local_storage() 81*73087489SDave Marchevsky{ 82*73087489SDave Marchevsky bench="$1" 83*73087489SDave Marchevsky summary=$(echo $2 | tail -n1) 84*73087489SDave Marchevsky printf "%-20s %s\n" "$bench" "$(local_storage $summary)" 85*73087489SDave Marchevsky} 86*73087489SDave Marchevsky 87f44bc543SJoanne Koongfunction summarize_total() 88f44bc543SJoanne Koong{ 89f44bc543SJoanne Koong bench="$1" 90f44bc543SJoanne Koong summary=$(echo $2 | tail -n1) 91f44bc543SJoanne Koong printf "%-20s %s\n" "$bench" "$(total $summary)" 92f44bc543SJoanne Koong} 93