性能評価・プロファイリング
コンパイラの新しい最適化で、実行する命令の数は20%減ったが、平均CPIが10%増えた(周波数は同じ)。この最適化の効果として正しいものはどれか。
- ACPIが増えたので、必ず遅くなる
- B実行時間は元の0.8倍になる
- C実行時間は元の0.88倍になり、速くなる
答えと解説を見る
正解:C. 実行時間は元の0.88倍になり、速くなる
実行時間は命令数とCPIの積に比例するので、0.8×1.1=0.88倍になり、約12%短くなります。複雑な命令を使って命令の数を減らすと1命令の手間が増えるように、ある要素を良くすると別の要素が悪くなることはよくあります。CPIや命令数のどちらか1つだけを見て判断すると誤るので、積で比べることが大切です。
- A. 命令の減り方の方が大きいので、全体では速くなります。
- B. CPIの増加を忘れています。
- C. 正しい。0.8×1.1=0.88です。