Files
sunnypilot/selfdrive/debug/profiling/py-spy/profile.sh
Greg Hogan 15a58247dd profiling: replace pyflame with py-spy (#22864)
* py-spy

* remove pyflame

* find process by name
old-commit-hash: caad4919ac
2021-11-10 23:27:10 -08:00

22 lines
431 B
Bash
Executable File

#!/usr/bin/env bash
set -e
cd "$(dirname "$0")"
# find process with name passed in (excluding this process)
for PID in $(pgrep -f $1); do
if [ "$PID" != "$$" ]; then
ps -p $PID -o args
TRACE_PID=$PID
break
fi
done
if [ -z "$TRACE_PID" ]; then
echo "could not find PID for $1"
exit 1
fi
sudo env PATH=$PATH py-spy record -d 5 -o /tmp/perf$TRACE_PID.svg -p $TRACE_PID &&
google-chrome /tmp/perf$TRACE_PID.svg