first version only dirs parralell
This commit is contained in:
35
tests/perfomanse.sh
Executable file
35
tests/perfomanse.sh
Executable file
@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
echo "Usage: $0 <path_to_executable>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
test_file="$1"
|
||||
iterations=100
|
||||
times=()
|
||||
|
||||
for i in $(seq 1 $iterations); do
|
||||
rm -rf /pkg/gnu/lib
|
||||
sleep 0.1
|
||||
|
||||
start_time=$(date +%s%N)
|
||||
$test_file
|
||||
end_time=$(date +%s%N)
|
||||
|
||||
elapsed_time=$((end_time - start_time))
|
||||
elapsed_time_seconds=$(echo "scale=6; $elapsed_time / 1000000000" | bc)
|
||||
times+=($elapsed_time_seconds)
|
||||
done
|
||||
|
||||
sorted_times=($(printf '%s\n' "${times[@]}" | sort -n))
|
||||
|
||||
mid=$((iterations / 2))
|
||||
if (( iterations % 2 == 1 )); then
|
||||
median=${sorted_times[$mid]}
|
||||
else
|
||||
median=$(echo "scale=6; (${sorted_times[$mid]} + ${sorted_times[$((mid - 1))]} ) / 2" | bc)
|
||||
fi
|
||||
|
||||
echo "Test: $test_file"
|
||||
echo "Median exec time: $median"
|
||||
Reference in New Issue
Block a user