summaryrefslogtreecommitdiffstats
path: root/scripts/create-flamegraph.sh
blob: 8c03aa2891fc803c36bddaae1b0ce71700c37ee0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/env bash

# Make sure FlameGraph scripts are available
if [ ! -e ./FlameGraph ]
then
    git clone https://github.com/BrendanGregg/FlameGraph
fi

if [ ! -e target/release/alacritty ]
then
    echo "Must build alacritty first: cargo build --release"
    exit 1
fi

# This will block while alacritty runs
perf record -g -F 99 target/release/alacritty
perf script | ./FlameGraph/stackcollapse-perf.pl | ./FlameGraph/flamegraph.pl --width 1920 > alacritty.svg

echo "Flame graph created at file://$(pwd)/alacritty.svg"