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

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

