#topicpath


/////////////////////////////////////////////////////////////////////////////////
* 目次 [#p37d612e]
#contents();



/////////////////////////////////////////////////////////////////////////////////
* プロファリングとは [#k24b081a]
- どの関数が(1)どれだけ処理時間を消費するか、(2)何度呼ばれているか、(3)どの関数を呼んでいる/どの関数に呼ばれているか、などを測定することをプロファイリングという。
- 上記を計測するツールを ''プロファイラ'' と呼ぶ。

/////////////////////////////////////////////////////////////////////////////////
* 調査ツール [#vb8b89ff]

//===============================================================================
** perf [#perf]
//-------------------------------------------------------------------------------
*** 使い方 [#i6f4783f]
- debian では /bin/perf コマンド自体は最初から存在するが、実際の実行には linux-tools パッケージのインストールが必要になる。

- 実行
+ 記録
 $ perf record <executable-file>
-- これでカレントディレクトリに
 perf.data
というファイルが出来る。
+ 結果確認
 $ perf report


//-------------------------------------------------------------------------------
*** 参考リンク [#perf-links]
- [[perfの使いかた>http://int.main.jp/txt/perf/]]
- [[6.4.2. Perf の使用方法 (RedHat)>https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/6/html/Developer_Guide/perf-using.html]]
- [[perf を使ってプロファイルする方法(その1)>http://d.hatena.ne.jp/pyopyopyo/20140702/p1]]


//===============================================================================
** gprof [#gprof]
//-------------------------------------------------------------------------------
*** 使い方 [#i6f4783f]
+ 計測対象となるプログラムをビルドする際、 gcc/c++ のオプションに ''-pg'' を渡して実行する。
+ 上記でビルドしたプログラムを実行する
+ プログラムが終了すると、結果を格納した
 gmon.out
というファイルが出力される。
+ 結果をみる
 $ gprof <executable-program> gmon.out


/////////////////////////////////////////////////////////////////////////////////
* 参考リンク [#z823753c]
//-------------------------------------------------------------------------------
*** 参考リンク [#gprof-links]
- [[minus9d's diary - gprofを使いこなす>http://minus9d.hatenablog.com/entry/20140112/1389502918]]
- [[プロファイラ(gprof)>http://nenya.cis.ibaraki.ac.jp/TIPS/gprof.html]]


/////////////////////////////////////////////////////////////////////////////////
* 参考リンク [#i6772b45]
- [[CPU利用率, 高負荷なプロセスの特定の仕方>http://qiita.com/stsn/items/061827aae14541d0153b]]



トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS