実行するとこのように表示されます。インタラクティブシェルが起動します。配下に保存しているので、後で起動したいときはそのファイルを指定して起動します。使った場合に比べて、以下の違いに注目してください。コマンドで実行ファイルを省略できる。いう拡張子が付いている。経由のプロファイル取得は、ネットワーク経由で別のサーバーのプログラムのプロファイルを取る際に手元にプロファイル対象となるバイナリが無いケースに対応できるように、生のプロファイル結果に加えてシンボル情報も取得し、プロファイル結果から関数名がわかるようになっています。ツールの機能の中にはシンボル情報だけでなくデバッグ情報が必要なものもあるので、できればバイナリファイルを省略せずに指定したほうが良いでしょう。その場合は次のように、URLやプロファイル結果ファイル名の前にバイナリファイル名を書きます。これは実行時間の多い順に関数を表示します。コマンドに続けて数値を書くと、上位何件を表示するかを指定することができます。ように書くこともできます。今回のケースでは自明ですが、重い関数自体ではなく、その関数の呼び出し元がどこかが問題になるケースがあります。正規表現が重い事がわかっても、プログラム中に正規表現を使っている箇所が複数あり、どの場所で使ってる正規表現が重いのかがわからない場合などです。オプションを使います。方が上に来てしまいました。実際のプログラムでも、サンプル数が足りないとか偏りが激しい場合はこのような事が起こり得ます。このコマンドは引数に関数名のパターンを受け取ります。パッケージの関数をすべて指定することができます。カラムが、注目している関数と、その呼び出し元、呼び出し先です。呼び出し先が存在していないことを示しています。それぞれ1つずつであることを示しています。今回のサンプルプログラムはシンプルすぎるので意味がありませんが、実際のプログラムではどこからの呼び出しが多いのかなどを知ることができます。このコマンドは引数に関数名のパターンを取ります。33:}(pprof)このように、ソースコードの各行が何秒使ったかをわかりやすく表示してくれます。2つ並んでいますが、左側がその関数自体が消費した時間、右側がその行で呼びだしている関数の時間も合わせた消費時間になります。秒とフィボナッチ数列になってるのが判ります。経由でプロファイルするときもバイナリファイルを指定する必要があります。ソースを表示するためにデバッグ情報として入っているフルパスを参照しているので、ビルドしたマシンで利用するのが一番楽です。転送するのが良いでしょう。いう逆アセンブル結果を表示するコマンドもあり、これはバイナリがあればソースコードは必要ありません。ファイルは次のコマンドで生成しました。