summaryrefslogtreecommitdiff
path: root/tools/performance_test/performance_test
diff options
context:
space:
mode:
authorAndré Nusser <andre.nusser@googlemail.com>2016-01-31 23:10:30 +0100
committerAndré Nusser <andre.nusser@googlemail.com>2016-01-31 23:10:30 +0100
commit9310177b736ddf8c6599f685cd38191a95933202 (patch)
tree40b8a2f5d952065fd77737af0185e4e7217bda88 /tools/performance_test/performance_test
parent7985de37c0fad8500d69d3702a0cd58eb97d1030 (diff)
Give the test scripts a '.sh' ending. Small improvements to perf. test.
Diffstat (limited to 'tools/performance_test/performance_test')
-rwxr-xr-xtools/performance_test/performance_test126
1 files changed, 0 insertions, 126 deletions
diff --git a/tools/performance_test/performance_test b/tools/performance_test/performance_test
deleted file mode 100755
index 608b3ea..0000000
--- a/tools/performance_test/performance_test
+++ /dev/null
@@ -1,126 +0,0 @@
-#!/bin/bash
-# USAGE: ./performance_test <kit> <midimap> <midifile>
-# This script needs JACK to be started or just starts it itself if it isn't.
-
-test_dir=$(dirname $0)
-cd $test_dir
-
-dg_path="../../drumgizmo"
-sample_interval=.5
-cpu_plot_file="cpu_plot"
-ram_plot_file="ram_plot"
-cpu_data_file="cpu_data.dat"
-ram_data_file="ram_data.dat"
-
-# check for right number of parameters
-if [[ $# != 3 ]]
-then
- echo "ERROR: You didn't supply the right number of parameters."
- echo "USAGE: ./performance_test <kit> <midimap> <midifile>"
- echo "Exiting..."
- exit
-fi
-
-kit="$1"
-midimap="$2"
-midifile="$3"
-
-# function to check for dependencies
-function check_for_deps
-{
- for dep in "$@"
- do
- if ! command -v $dep >/dev/null 2>&1
- then
- echo "ERROR: Cannot find ${dep}. Maybe it isn't installed?"
- echo "Exiting..."
- exit
- fi
- done
-}
-
-# check for drumgizmo
-if ! [ -e $dg_path/drumgizmo ]
-then
- echo "ERROR: The drumgizmo binary doesn't exist. Maybe you forgot to compile?"
- echo "Exiting..."
- exit
-fi
-
-# check for dependencies
-check_for_deps gnuplot top awk
-
-# check for the existence of the passed files
-if ! [ -e "$1" ] || ! [ -e "$2" ] || ! [ -e "$3" ]
-then
- echo "ERROR: One of the files (kit/midimap/midfile) doesn't exist."
- echo "Exiting..."
- exit
-fi
-
-echo "============================"
-echo "Starting the performace test"
-echo "============================"
-
-# initial data values
-cpu_data=""
-ram_data=""
-avg_cpu_usage=""
-time_elapsed=0
-
-# log ram and cpu usage of process
-function logData
-{
- pid=$1
-
- top_output="$(top -b -n 1 -p $pid | grep "^[ ]*$pid")"
- top_arr=($top_output)
-
- cpu_usage="${top_arr[6]}"
- ram_usage="${top_arr[7]}"
-
- cpu_data="${cpu_data}${time_elapsed} ${cpu_usage}\n"
- ram_data="${ram_data}${time_elapsed} ${ram_usage}\n"
-
- avg_cpu_usage_candidate="$(ps -p $pid -o %cpu | grep "^[ ]*[0-9]*\.[0-9]*")"
- # to make sure the process was still running when we executed the last command
- if [ avg_cpu_usage_candidate != "" ]; then avg_cpu_usage=$avg_cpu_usage_candidate; fi
-
- # hack to allow for float addition in the bash
- time_elapsed="$(awk "BEGIN {print $time_elapsed+$sample_interval; exit}")"
-}
-
-# gnuplot ram and cpu usage over time
-function plotData
-{
- echo -e "$cpu_data" > $cpu_data_file
- echo -e "$ram_data" > $ram_data_file
- gnuplot performance_test.gnuplot > /dev/null 2>&1
-}
-
-# start dg
-echo $kit
-$dg_path/./drumgizmo -i midifile -I file="$midifile",midimap="$midimap" -o jackaudio "$kit" &
-pid=$!
-
-# collect data while dg is running
-while ps -p $pid > /dev/null
-do
- logData $pid
- sleep $sample_interval
-done
-
-# plot data
-plotData
-
-echo
-echo "-------------------------------------------------------------------"
-echo "The average CPU usage was: ${avg_cpu_usage}%"
-echo "See the data files $cpu_data_file and $ram_data_file for details."
-echo "They are nicely plotted in cpu_data.png and ram_data.png."
-echo "-------------------------------------------------------------------"
-echo
-
-echo "============================"
-echo "Finished the performace test"
-echo "============================"