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

性能カウンタを使ったトップダウン分析(Top-down Microarchitecture Analysis)で、CPUの命令を処理する枠の使われ方を分ける大きな分類として正しいものはどれか。

  1. A速い、遅い、普通の3つ
  2. Bフロントエンドで詰まる、バックエンドで詰まる、投機が無駄になる、正しく命令を完了する(リタイア)の4つ
  3. Cディスク、ネットワーク、画面、キーボードの4つ
答えと解説を見る

正解:B. フロントエンドで詰まる、バックエンドで詰まる、投機が無駄になる、正しく命令を完了する(リタイア)の4つ

トップダウン分析では、毎サイクルの命令を処理する枠が、命令を取り出して解読する前段(フロントエンド)が間に合わずに空いたのか、演算器やメモリの待ちなど後段(バックエンド)で詰まったのか、予測を誤って捨てる命令に使われたのか、正しく完了した命令に使われたのかに分けます。最も大きな分類からさらに細かい原因へ絞り込むことで、効率よくボトルネックを特定できます。

  • A. そのような分類ではありません。
  • B. 正しい。上の分類から順に細かく原因を絞り込みます。
  • C. CPUの中の分類ではありません。
この分野を解く 分野ページへ

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

  1. プログラムが遅いのに、CPUの使用率が20%程度と低かった。最も考えられる原因はどれか。
  2. あるプログラムが計算律速かメモリ律速かを確かめる方法として、CPUの周波数を変えて実行時間を測った。メモリ律速なら一般にどのような結果になるか。
  3. Rooflineモデルで、ある処理がメモリ帯域で制限される領域にあると分かったとき、性能を上げる方向として正しいものはどれか。
  4. STREAMベンチマークで主に測るものはどれか。
  5. 並列プログラムのスケーラビリティを調べるときの方法として最も適切なものはどれか。