性能評価・プロファイリング
性能の改善を表す「速度向上率(スピードアップ)」の求め方として正しいものはどれか。
- A改善前の実行時間 ÷ 改善後の実行時間
- B改善後の実行時間 ÷ 改善前の実行時間
- C改善前の実行時間 − 改善後の実行時間
答えと解説を見る
正解:A. 改善前の実行時間 ÷ 改善後の実行時間
速度向上率は、改善前の時間を改善後の時間で割った値です。例えば10秒かかっていた処理が4秒になれば、10÷4=2.5倍の速度向上です。「60%短くなった」と「2.5倍速くなった」は同じことを表していますが、言い方を混同しやすいので注意が必要です。並列化の効果を示すときは、1つのコアのときの時間を基準にして、コアの数を増やしたときの速度向上率を示します。
- A. 正しい。2なら2倍速くなったという意味です。
- B. それは時間の比で、1より小さい値になります。
- C. 差では倍率になりません。