応用情報技術者 2012年 春期 午前2 問11
問題文
スーパスカラの説明として、適切なものはどれか。
選択肢
ア:処理すべきベクトルの長さがベクトルレジスタより長い場合、ベクトルレジスタ長の組に分割して処理を繰り返す方式である。
イ:パイプラインを更に細分化することによって、高速化を図る方式である。
ウ:複数のパイプラインを用い、同時に複数の命令を実行可能にすることによって、高速化を図る方式である。(正解)
エ:命令語を長く取り、一つの命令で複数の機能ユニットを同時に制御することによって、高速化を図る方式である。
スーパスカラの説明 +【午前2 解説】
要点まとめ
- 結論:スーパスカラは複数のパイプラインを使い、同時に複数命令を実行して高速化を図る方式です。
- 根拠:単一パイプラインの限界を超え、複数命令を並列処理することで処理性能を向上させます。
- 差がつくポイント:パイプラインの細分化やベクトル処理とは異なり、複数命令の同時実行に注目することが重要です。
正解の理由
選択肢ウは「複数のパイプラインを用い、同時に複数の命令を実行可能にすることによって高速化を図る方式」とあり、スーパスカラの定義に合致します。スーパスカラは複数の命令を並列に処理することでCPUのスループットを向上させる技術であり、これが正解です。
よくある誤解
スーパスカラはパイプラインの細分化(イ)やベクトル処理(ア)とは異なり、単に命令の長さやパイプラインの段階数を増やす方式ではありません。
解法ステップ
- 問題文の「スーパスカラ」の意味を確認する。
- 各選択肢の説明がスーパスカラの特徴に合致するかを検討する。
- 複数命令の同時実行を明示している選択肢を探す。
- 選択肢ウが該当するため、これを正解と判断する。
選択肢別の誤答解説
- ア:ベクトルレジスタの長さに関する説明はベクトルプロセッサの特徴であり、スーパスカラとは異なります。
- イ:パイプラインの細分化はパイプラインの深度を増やす技術で、スーパスカラの並列実行とは別の高速化手法です。
- ウ:正解。複数パイプラインで複数命令を同時に実行するスーパスカラの本質を正しく表しています。
- エ:一つの命令で複数機能ユニットを制御する方式はVLIW(Very Long Instruction Word)に近く、スーパスカラとは異なります。
補足コラム
スーパスカラは命令レベルの並列性(ILP: Instruction Level Parallelism)を活用し、複数の命令を同時に実行することでCPUの性能を向上させます。これに対し、パイプラインは命令の処理を段階的に分割し、処理効率を上げる技術です。VLIWはコンパイラが複数命令を束ねて一度に実行する方式で、スーパスカラとは制御方法が異なります。
FAQ
Q: スーパスカラとパイプラインの違いは何ですか?
A: パイプラインは一つの命令を複数段階に分けて処理し効率化する技術で、スーパスカラは複数の命令を同時に実行する技術です。
A: パイプラインは一つの命令を複数段階に分けて処理し効率化する技術で、スーパスカラは複数の命令を同時に実行する技術です。
Q: スーパスカラはどのように命令の同時実行を実現していますか?
A: 複数の実行ユニットとパイプラインを持ち、命令の依存関係を解析して並列に処理可能な命令を同時に実行します。
A: 複数の実行ユニットとパイプラインを持ち、命令の依存関係を解析して並列に処理可能な命令を同時に実行します。
関連キーワード: スーパスカラ、パイプライン、命令レベル並列性、VLIW, ベクトルプロセッサ

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

