52 lines
793 B
Bash
Executable File
52 lines
793 B
Bash
Executable File
#!/bin/bash
|
|
if [[ "$1" == '' ]]; then
|
|
if [[ "$0" != *"bench.sh" ]]; then
|
|
echo "usage: $0 bench <path_to_ffmpeg>"
|
|
else
|
|
echo "usage: $0 <path_to_ffmpeg>"
|
|
fi
|
|
exit 1
|
|
fi
|
|
res=()
|
|
uwu=0
|
|
|
|
function count() {
|
|
x=0
|
|
for (( i=0; i<${#res[@]}; i++ )); do
|
|
x=$((x+${res[i]}))
|
|
done
|
|
uwu=$((uwu+$((x/${#res[@]}))))
|
|
echo "$((x/${#res[@]}))"
|
|
res=()
|
|
}
|
|
|
|
function invoke() {
|
|
( time $@ ) 2>&1 | grep -a real | grep -aPoh "[^(real\t0m\.)].*[^s]"
|
|
}
|
|
|
|
|
|
|
|
echo "FFmpeg launch benchmark"
|
|
echo -n "Burst... "
|
|
|
|
for (( i=0; i<100; i++ )); do
|
|
res+=($(invoke $1))
|
|
done
|
|
count
|
|
|
|
echo -n "Set sleep... "
|
|
for (( i=0; i<25; i++ )); do
|
|
res+=($(invoke $1))
|
|
sleep 0.1
|
|
done
|
|
count
|
|
|
|
echo -n "Random sleep... "
|
|
for (( i=0; i<25; i++ )); do
|
|
res+=($(invoke $1))
|
|
sleep 0.$((RANDOM%10))
|
|
done
|
|
count
|
|
|
|
echo "yeah, try $((uwu/3))"
|