プロファイラの利用
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/10/20 17:04 UTC 版)
プロファイラ(英: profiler)は性能解析ツールであり、プログラム実行時の各種情報を収集する。特に、関数呼び出しの頻度やそれにかかる時間を計測する。出力は記録したイベントの羅列(トレース)の場合と、観測したイベント群の統計的要約(プロファイル)の場合がある。プロファイラがデータを収集する技法は様々で、ハードウェアの割り込みを利用する技法、コードに命令を埋め込む技法、オペレーティングシステムのフックを利用する技法、性能カウンタを利用する技法などがある。プロファイラの使用はパフォーマンスエンジニアリングにおいて重要である。 プロファイルは統計的な総和としてソースコードの位置と関連付けてイベントを記録するため、データのサイズは対象となったコードのサイズにほぼ比例する。一方、トレースのサイズはプログラムの実行時間に比例したサイズとなってしまうため、実用的でないこともある。並列性のないプログラムでは、一般にプロファイルで十分だが、並列性のあるプログラムでの性能問題(メッセージ待ちや同期問題)については、イベントが時系列としてどういう順序で発生しているかが重要であるため、完全なトレースを必要とすることが多い。 プログラム解析ツールはプログラムの振る舞いを理解するために非常に重要である。コンピュータアーキテクトはそのようなツールを使って新たなコンピュータ・アーキテクチャでプログラムがうまく実行されるかどうかを評価する必要がある。ソフトウェア制作者は、作成したプログラムをそのようなツールで解析し、問題となるコードを特定する。コンパイラ作成者も、命令スケジューリングや分岐予測アルゴリズムがうまく機能しているかを知るためにそのようなツールを用いることが多い… — ATOM、Programming Language Design and Implementation, 1994
※この「プロファイラの利用」の解説は、「性能解析」の解説の一部です。
「プロファイラの利用」を含む「性能解析」の記事については、「性能解析」の概要を参照ください。
- プロファイラの利用のページへのリンク