Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
perf/run: add run_subsection()
author
Christian Couder
<chriscool@tuxfamily.org>
Sat, 23 Sep 2017 19:55:56 +0000
(19:55 +0000)
committer
Junio C Hamano
<gitster@pobox.com>
Sun, 24 Sep 2017 07:58:34 +0000
(16:58 +0900)
Let's actually use the subsections we find in the config file
to run the perf tests separately for each subsection.
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/perf/run
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
9ba95ed
)
diff --git
a/t/perf/run
b/t/perf/run
index bd39398b9cc7d1ea6b3dcaff6406f3c915cb7c03..cb8687bfcf98dbe9b3982975122ddb1b51a99d80 100755
(executable)
--- a/
t/perf/run
+++ b/
t/perf/run
@@
-125,23
+125,46
@@
get_var_from_env_or_config () {
test -n "${4+x}" && eval "$env_var=\"$4\""
}
test -n "${4+x}" && eval "$env_var=\"$4\""
}
-get_var_from_env_or_config "GIT_PERF_REPEAT_COUNT" "perf" "repeatCount" 3
-export GIT_PERF_REPEAT_COUNT
+run_subsection () {
+ get_var_from_env_or_config "GIT_PERF_REPEAT_COUNT" "perf" "repeatCount" 3
+ export GIT_PERF_REPEAT_COUNT
-get_var_from_env_or_config "GIT_PERF_DIRS_OR_REVS" "perf" "dirsOrRevs"
-set -- $GIT_PERF_DIRS_OR_REVS "$@"
+
get_var_from_env_or_config "GIT_PERF_DIRS_OR_REVS" "perf" "dirsOrRevs"
+
set -- $GIT_PERF_DIRS_OR_REVS "$@"
-get_var_from_env_or_config "GIT_PERF_MAKE_COMMAND" "perf" "makeCommand"
-get_var_from_env_or_config "GIT_PERF_MAKE_OPTS" "perf" "makeOpts"
+
get_var_from_env_or_config "GIT_PERF_MAKE_COMMAND" "perf" "makeCommand"
+
get_var_from_env_or_config "GIT_PERF_MAKE_OPTS" "perf" "makeOpts"
-GIT_PERF_AGGREGATING_LATER=t
-export GIT_PERF_AGGREGATING_LATER
+ GIT_PERF_AGGREGATING_LATER=t
+ export GIT_PERF_AGGREGATING_LATER
+
+ if test $# = 0 -o "$1" = -- -o -f "$1"; then
+ set -- . "$@"
+ fi
+
+ run_dirs "$@"
+ ./aggregate.perl "$@"
+}
cd "$(dirname $0)"
. ../../GIT-BUILD-OPTIONS
cd "$(dirname $0)"
. ../../GIT-BUILD-OPTIONS
-if test $# = 0 -o "$1" = -- -o -f "$1"; then
- set -- . "$@"
+mkdir -p test-results
+get_subsections "perf" >test-results/run_subsections.names
+
+if test $(wc -l <test-results/run_subsections.names) -eq 0
+then
+ (
+ run_subsection "$@"
+ )
+else
+ while read -r subsec
+ do
+ (
+ GIT_PERF_SUBSECTION="$subsec"
+ export GIT_PERF_SUBSECTION
+ echo "======== Run for subsection '$GIT_PERF_SUBSECTION' ========"
+ run_subsection "$@"
+ )
+ done <test-results/run_subsections.names
fi
fi
-run_dirs "$@"
-./aggregate.perl "$@"