From b51da61dc4401efadfe15b90ce65ab24c80cf9e0 Mon Sep 17 00:00:00 2001 From: Adeeb Shihadeh Date: Mon, 22 Nov 2021 14:03:42 -0800 Subject: [PATCH] perfetto (#22998) Co-authored-by: Comma Device --- selfdrive/debug/profiling/perfetto/.gitignore | 7 +++++++ selfdrive/debug/profiling/perfetto/build.sh | 11 +++++++++++ selfdrive/debug/profiling/perfetto/copy.sh | 6 ++++++ selfdrive/debug/profiling/perfetto/record.sh | 8 ++++++++ selfdrive/debug/profiling/perfetto/server.sh | 6 ++++++ selfdrive/debug/profiling/perfetto/traces.sh | 5 +++++ 6 files changed, 43 insertions(+) create mode 100644 selfdrive/debug/profiling/perfetto/.gitignore create mode 100755 selfdrive/debug/profiling/perfetto/build.sh create mode 100755 selfdrive/debug/profiling/perfetto/copy.sh create mode 100755 selfdrive/debug/profiling/perfetto/record.sh create mode 100755 selfdrive/debug/profiling/perfetto/server.sh create mode 100755 selfdrive/debug/profiling/perfetto/traces.sh diff --git a/selfdrive/debug/profiling/perfetto/.gitignore b/selfdrive/debug/profiling/perfetto/.gitignore new file mode 100644 index 000000000..d86c89d46 --- /dev/null +++ b/selfdrive/debug/profiling/perfetto/.gitignore @@ -0,0 +1,7 @@ +trace_* + +tracebox +trace_processor + +perfetto/ +configs/ diff --git a/selfdrive/debug/profiling/perfetto/build.sh b/selfdrive/debug/profiling/perfetto/build.sh new file mode 100755 index 000000000..448c1d04a --- /dev/null +++ b/selfdrive/debug/profiling/perfetto/build.sh @@ -0,0 +1,11 @@ +#!/usr/bin/bash + +if [ ! -d perfetto ]; then + git clone https://android.googlesource.com/platform/external/perfetto/ +fi + +cd perfetto + +tools/install-build-deps --linux-arm +tools/gn gen --args='is_debug=false target_os="linux" target_cpu="arm64"' out/linux +tools/ninja -C out/linux tracebox traced traced_probes perfetto diff --git a/selfdrive/debug/profiling/perfetto/copy.sh b/selfdrive/debug/profiling/perfetto/copy.sh new file mode 100755 index 000000000..8deca9a6e --- /dev/null +++ b/selfdrive/debug/profiling/perfetto/copy.sh @@ -0,0 +1,6 @@ +#!/usr/bin/bash + +DEST=tici:/data/openpilot/selfdrive/debug/profiling/perfetto + +scp -r perfetto/out/linux/tracebox $DEST +scp -r perfetto/test/configs $DEST diff --git a/selfdrive/debug/profiling/perfetto/record.sh b/selfdrive/debug/profiling/perfetto/record.sh new file mode 100755 index 000000000..99f216877 --- /dev/null +++ b/selfdrive/debug/profiling/perfetto/record.sh @@ -0,0 +1,8 @@ +#!/usr/bin/bash + +DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" +cd $DIR + +OUT=trace_ +sudo ./tracebox -o $OUT --txt -c configs/scheduling.cfg +sudo chown $USER:$USER $OUT diff --git a/selfdrive/debug/profiling/perfetto/server.sh b/selfdrive/debug/profiling/perfetto/server.sh new file mode 100755 index 000000000..19958c653 --- /dev/null +++ b/selfdrive/debug/profiling/perfetto/server.sh @@ -0,0 +1,6 @@ +#!/usr/bin/bash + +curl -LO https://get.perfetto.dev/trace_processor +chmod +x ./trace_processor + +./trace_processor --httpd diff --git a/selfdrive/debug/profiling/perfetto/traces.sh b/selfdrive/debug/profiling/perfetto/traces.sh new file mode 100755 index 000000000..489b04237 --- /dev/null +++ b/selfdrive/debug/profiling/perfetto/traces.sh @@ -0,0 +1,5 @@ +#!/usr/bin/bash + +DEST=tici:/data/openpilot/selfdrive/debug/profiling/perfetto + +scp tici:/data/openpilot/selfdrive/debug/profiling/perfetto/trace_* .