aboutsummaryrefslogtreecommitdiff
path: root/automated
diff options
context:
space:
mode:
authorDaniel Wagner <wagi@monom.org>2019-07-31 16:55:40 +0200
committerDaniel Wagner <dwagner@suse.de>2020-08-27 21:13:39 +0200
commit78d27251bad6faf754af811e8696b474a3880b9e (patch)
tree77ffbea5f418b4ab4e8df6af09ea78b53af329c4 /automated
parent4beef9d7b12a35488a3cda2630d91f9974064db3 (diff)
cyclicdeadline: Add background command
Start a background process to create load on the system while running the test. Signed-off-by: Daniel Wagner <wagi@monom.org>
Diffstat (limited to 'automated')
-rwxr-xr-xautomated/linux/cyclicdeadline/cyclicdeadline.sh11
-rw-r--r--automated/linux/cyclicdeadline/cyclicdeadline.yaml4
2 files changed, 12 insertions, 3 deletions
diff --git a/automated/linux/cyclicdeadline/cyclicdeadline.sh b/automated/linux/cyclicdeadline/cyclicdeadline.sh
index 2404772..1f6b1b7 100755
--- a/automated/linux/cyclicdeadline/cyclicdeadline.sh
+++ b/automated/linux/cyclicdeadline/cyclicdeadline.sh
@@ -15,19 +15,21 @@ STEP="500"
THREADS="1"
DURATION="1m"
MAX_LATENCY="50"
+BACKGROUND_CMD=""
usage() {
- echo "Usage: $0 [-i interval] [-s step] [-t threads] [-D duration ] [-m latency]" 1>&2
+ echo "Usage: $0 [-i interval] [-s step] [-t threads] [-D duration ] [-m latency] [-w background_cmd]" 1>&2
exit 1
}
-while getopts ":i:s:t:D:m:" opt; do
+while getopts ":i:s:t:D:m:w:" opt; do
case "${opt}" in
i) INTERVAL="${OPTARG}" ;;
s) STEP="${STEP}" ;;
t) THREADS="${OPTARG}" ;;
D) DURATION="${OPTARG}" ;;
m) MAX_LATENCY="${OPTARG}" ;;
+ w) BACKGROUND_CMD="${OPTARG}" ;;
*) usage ;;
esac
done
@@ -41,9 +43,14 @@ if ! binary=$(command -v cyclicdeadline); then
# shellcheck disable=SC2154
binary="./bin/${abi}/cyclicdeadline"
fi
+
+background_process_start bgcmd --cmd "${BACKGROUND_CMD}"
+
"${binary}" -i "${INTERVAL}" -s "${STEP}" -t "${THREADS}" \
-D "${DURATION}" | tee "${LOGFILE}"
+background_process_stop bgcmd
+
# Parse test log.
../../lib/parse_rt_tests_results.py cyclicdeadline "${LOGFILE}" "${MAX_LATENCY}" \
| tee -a "${RESULT_FILE}"
diff --git a/automated/linux/cyclicdeadline/cyclicdeadline.yaml b/automated/linux/cyclicdeadline/cyclicdeadline.yaml
index 7259c4f..6614054 100644
--- a/automated/linux/cyclicdeadline/cyclicdeadline.yaml
+++ b/automated/linux/cyclicdeadline/cyclicdeadline.yaml
@@ -39,9 +39,11 @@ params:
# Maximal accepted latency in us
# This value is device/kernel specific and needs to be set in the job!
MAX_LATENCY: "50"
+ # Background workload to be run during the meassurement
+ BACKGROUND_CMD: ""
run:
steps:
- cd ./automated/linux/cyclicdeadline/
- - ./cyclicdeadline.sh -i "${INTERVAL}" -s "${STEP}" -t "${THREADS}" -D "${DURATION}" -m "${MAX_LATENCY}"
+ - ./cyclicdeadline.sh -i "${INTERVAL}" -s "${STEP}" -t "${THREADS}" -D "${DURATION}" -m "${MAX_LATENCY}" -w "${BACKGROUND_CMD}"
- ../../utils/send-to-lava.sh ./output/result.txt