summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbuild-perf-bisect.sh42
1 files changed, 34 insertions, 8 deletions
diff --git a/build-perf-bisect.sh b/build-perf-bisect.sh
index d2f16bb25e..9471151583 100755
--- a/build-perf-bisect.sh
+++ b/build-perf-bisect.sh
@@ -30,8 +30,8 @@ Usage: $script [-h] [-d DL_DIR] [-m TEST_METHOD] [-w WORKDIR] BUILD_TARGET THRES
Optional arguments:
-h show this help and exit.
-d DL_DIR to use
- -m test method, available options are: buildtime, tmpsize
- (default: $test_method)
+ -m test method, available options are:
+ buildtime, tmpsize, esdktime (default: $test_method)
-w work directory to use
EOF
}
@@ -133,6 +133,13 @@ run_cmd () {
fi
}
+do_sync () {
+ run_cmd sync || exit 255
+ log "dropping kernel caches"
+ echo 3 | sudo -n -k /usr/bin/tee /proc/sys/vm/drop_caches > /dev/null || exit 255
+ sleep 2
+}
+
#
# TEST METHODS
@@ -142,9 +149,7 @@ buildtime () {
run_cmd rm -rf bitbake.lock conf/sanity_info cache tmp sstate-cache
log "syncing and dropping caches"
- run_cmd sync
- echo 3 | sudo -n -k /usr/bin/tee /proc/sys/vm/drop_caches > /dev/null || exit 255
- sleep 2
+ do_sync
result=`time_cmd bitbake $1` || exit 125
result_h=`s_to_hms $result`
@@ -159,9 +164,7 @@ tmpsize () {
run_cmd rm -rf bitbake.lock conf/sanity_info cache tmp sstate-cache
log "syncing and dropping caches"
- run_cmd sync
- echo 3 | sudo -n -k /usr/bin/tee /proc/sys/vm/drop_caches > /dev/null || exit 255
- sleep 2
+ do_sync
_time=`time_cmd bitbake $1` || exit 125
@@ -173,6 +176,24 @@ tmpsize () {
run_cmd rm -rf $builddir
}
+esdktime () {
+ run_cmd rm -rf esdk-deploy
+ _time=`time_cmd bitbake $1 -c populate_sdk_ext` || exit 125
+
+ esdk_installer=(tmp/deploy/sdk/*-toolchain-ext-*.sh)
+ if [ ${#esdk_installer[@]} -gt 1 ]; then
+ log "Found ${#esdk_installer[@]} eSDK installers"
+ fi
+
+ do_sync
+
+ result=`time_cmd "${esdk_installer[-1]}" -y -d "esdk-deploy"` || exit 125
+ result_h=`s_to_hms $result`
+
+ log "removing deploy directories"
+ run_cmd rm -rf esdk-deploy tmp*
+}
+
#
# MAIN SCRIPT
@@ -189,6 +210,11 @@ case "$test_method" in
threshold=$2
threshold_h=`kib_to_gib $2`
;;
+ esdktime)
+ threshold=`hms_to_s $2`
+ threshold_h=`s_to_hms $threshold`
+ builddir="$workdir/build"
+ ;;
*)
echo "Invalid test method $test_method"
exit 255