性能評価・プロファイリング

あるプログラムの命令の割合が、整数の演算50%(CPI 1)、ロードとストア30%(CPI 2)、分岐20%(CPI 5)だった。平均CPIはいくらか。

  1. A2.1
  2. B2.67
  3. C8
答えと解説を見る

正解:A. 2.1

平均CPIは、命令の種類ごとのCPIに、その種類が全体に占める割合を掛けて足し合わせたものです。0.5×1+0.3×2+0.2×5=0.5+0.6+1.0=2.1になります。この例では、分岐は全体の20%なのに、CPIの合計の半分近くを占めています。どの種類の命令が時間を多く使っているかが分かるので、改善するべき場所を見つける手がかりになります。

  • A. 正しい。0.5×1+0.3×2+0.2×5=2.1です。
  • B. 割合を考えずにCPIの値を単純に平均しています。
  • C. CPIの値をそのまま足しています。
この分野を解く 分野ページへ

性能評価・プロファイリングのほかの問題

  1. CPUの性能を「1秒あたりに実行できる命令の数(百万命令毎秒)」で比べるときの注意点として正しいものはどれか。
  2. 性能の改善を表す「速度向上率(スピードアップ)」の求め方として正しいものはどれか。
  3. 処理全体の50%を占める部分を4倍速くした。全体の速度向上率はいくらか(アムダールの法則)。
  4. 処理全体の60%を占める部分だけを速くして、全体を2倍速くしたい。その部分を何倍速くする必要があるか。
  5. アムダールの法則から得られる、性能の改善の進め方についての教訓として最も適切なものはどれか。