備忘録
perf:インストール
$ sudo apt install linux-tools-`uname -r`
PostgreSQLの準備
"--enable-debug"オプション必須。
$ ./configure --prefix=/usr/local/pgsql --without-icu --enable-debug CFLAGS="-O2 -g"
perf: 測定
一時的に権限を変更。
$ sudo sh -c 'echo 1 > /proc/sys/kernel/perf_event_paranoid'
その後に測定する。以下の例では毎秒99回、60秒間、サンプリングする。
$ perf record -F 99 -p <PostgreSQLのPID> -g -- sleep 60
FlameGraph
Install
$ git clone https://github.com/brendangregg/FlameGraph
perf測定結果のグラフ化
$ perf script | ./FlameGraph/stackcollapse-perf.pl > out.perf-folded $ ./FlameGraph/flamegraph.pl out.perf-folded > perf-output.svg