Ubuntu > プロファイラ
更新日
2014-04-21
広告
gprof
gprofは、主にアプリケーションレベルのプロファイリングを行います。 gprofを使用するためには、プロファイルしたいプログラムをgccでコンパイルするさいに、-pg オプションをつける必要があります。$ gcc -pg main.cそして、普通にプログラムを実行します。すると、gmon.out というファイルが出力されているはずです。
$ gprof a.out gmon.out上記のように、プログラムとgmon.outを指定することで、どの関数が何度呼ばれているかや、関数の実行にかかった時間の合計を見れます。
perf
Ubuntu 12.04だと、apt-getでOProfileをインストールできません(サポートされていないため)。 perfコマンドを使えば、OProfileのように、カーネルレベルのプロファイルが可能です。$ sudo apt-get install linux-tools linux-tools-3.2インストールされたlinux-toolsのバージョンと、uname -r で出るバージョンが一致していないと、perfコマンドはエラーを出力します。カーネルを独自にビルドしている場合は、バージョンに注意してください。
$ sudo perf record a.out上記のように、プログラムを実行する際に、sudo perf recordをつければよいです。 プログラムを停止すると、perfコマンドはプロファイル結果をファイルに出力します。 次に、以下のように、perf report を実行すれば、プロファイル結果を閲覧できます。
$ sudo perf report
広告
お問い合わせは sweng.tips@gmail.com まで。