正答4
解説
正解は4です。
この問題は、性能改善のために関数や文の実行回数・実行時間を計測して統計を取るツールを問うています。
【選択肢別解説】
1:× コンパイラは、高水準言語で書かれたソースプログラムを、機械語などの目的プログラムに翻訳するツールです。
実行時の回数や時間は計測しません。
2:× デバッガは、ブレークポイントでの停止や変数の値の確認などによって、プログラムの誤り(バグ)を見つけるためのツールです。
性能の統計を取るためのものではありません。
3:× パーサは、ソースコードなどの文字列を文法規則に従って解析し、構文木などの構造に変換する構文解析器です。
実行性能の計測とは関係ありません。
4:○ プロファイラは、プログラムを実行しながら、関数や文ごとの実行回数や実行時間を計測して統計情報として出力します。
処理時間の多くを占める箇所(ボトルネック)を見つけ、重点的に改善するために使います。
【ポイント】
性能改善では、まずプロファイラで計測し、時間のかかっている部分から手を付けるのが定石です。
バグを探すデバッガと、性能を測るプロファイラを区別しておきましょう。