性能評価・プロファイリング
ソフトウェアの開発で、変更のたびにベンチマークを自動で実行して結果を記録しておく目的として正しいものはどれか。
- Aベンチマークの結果を毎回同じ値にするため
- Bプログラムの機能を自動で増やすため
- Cある変更で性能が悪くなった(性能の回帰)ことに早く気づき、原因の変更を特定しやすくするため
答えと解説を見る
正解:C. ある変更で性能が悪くなった(性能の回帰)ことに早く気づき、原因の変更を特定しやすくするため
小さな変更が積み重なると、気づかないうちに性能が少しずつ落ちていくことがあります。変更のたびに同じ条件でベンチマークを実行して結果を記録しておけば、性能が落ちたときにすぐ気づけ、どの変更が原因かもすぐ分かります。何か月も後に気づくと、多くの変更の中から原因を探すのが大変になります。測定のばらつきを考えて、意味のある差だけを知らせる工夫も必要です。
- A. 結果は変更や環境で変わるので、記録して比べます。
- B. 機能を増やすものではありません。
- C. 正しい。性能も機能と同じように守る対象です。