aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Kuvyrkov <maxim.kuvyrkov@linaro.org>2017-02-21 08:40:03 +0000
committerMaxim Kuvyrkov <maxim.kuvyrkov@linaro.org>2017-02-21 08:40:03 +0000
commit48a123bf0bf6f339eec535cfa2a7452fea829de1 (patch)
treefe9e8be0938cb950ec47dfe96d621d77585c3d79
parent07876219967d30fba0351b98744b74ecd3351c7b (diff)
perfdatadir2csv.sh: Add --buildid-dir option similar to spec2xxx-config
Change-Id: I882fb3c53663821dbfa2cb35f035403c0b6784ef
-rwxr-xr-xperfdatadir2csv.sh18
1 files changed, 16 insertions, 2 deletions
diff --git a/perfdatadir2csv.sh b/perfdatadir2csv.sh
index 3372395..dc22d7c 100755
--- a/perfdatadir2csv.sh
+++ b/perfdatadir2csv.sh
@@ -2,6 +2,7 @@
set -e
+buildid_dir="global"
perf_dirs=()
event="cycles"
format="sample,overhead"
@@ -12,9 +13,10 @@ num_entries[symbol]=${num_entries[total]}
add_time=false
verbose=""
-OPTS="`getopt -l dir:,event:,format:,num:,num-dsos:,num-symbols:,time,verbose -o d:,e:,f:,n:,t,v -- "$@"`"
+OPTS="`getopt -l buildid-dir:,dir:,event:,format:,num:,num-dsos:,num-symbols:,time,verbose -o d:,e:,f:,n:,t,v -- "$@"`"
while test $# -gt 0; do
case $1 in
+ --buildid-dir) buildid_dir="$2"; shift ;;
--dir|-d) perf_dirs=("${perf_dirs[@]}" "$(cd $2; pwd)"); shift ;;
--event|-e) event="$2"; shift ;;
--format|-f) format="$2"; shift ;;
@@ -63,12 +65,24 @@ done
echo "benchmark,symbol,$format"
for perf_dir in "${perf_dirs[@]}"; do
+ case "$buildid_dir" in
+ "global"|"none")
+ buildid_opt=""
+ ;;
+ "local")
+ buildid_opt="--buildid-dir $perf_dir"
+ ;;
+ *)
+ buildid_opt="--buildid-dir $buildid_dir"
+ ;;
+ esac
+
for data in $(cd "$perf_dir"; ls [1-8]*.data); do
if $add_time; then
spectime "$perf_dir" "$data" "$format"
fi
for report_field in dso symbol; do
- perf report --symfs="$perf_dir" -i "$perf_dir/$data" --stdio \
+ perf $buildid_opt report -i "$perf_dir/$data" --stdio \
-g none --no-children -F $report_field,$format -s sample \
-t, -w 40 2>/dev/null \
| awk "